spring4-4-jdbc-02
1.简化 JDBC 模板查询
- 每次使用都创建一个 JdbcTemplate 的新实例, 这种做法效率很低下.
- JdbcTemplate 类被设计成为线程安全的, 所以可以再 IOC 容器中声明它的单个实例, 并将这个实例注入到所有的 DAO 实例中.(推荐使用)
- JdbcTemplate 也利用了 Java 1.5 的特定(自动装箱, 泛型, 可变长度等)来简化开发
- Spring JDBC 框架还提供了一个 JdbcDaoSupport 类来简化 DAO 实现. 该类声明了 jdbcTemplate 属性, 它可以从 IOC 容器中注入, 或者自动从数据源中创建.(不推荐使用)
第二条示例:
package com.l1.spring.jdbc; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowMapper;
import org.springframework.stereotype.Repository; @Repository
public class EmployeeDao {
@Autowired
private JdbcTemplate jdbcTemplate; public Employee get(int id){ String sql = "select id,name,email from employees where id=?";
RowMapper<Employee> rowMapper = new BeanPropertyRowMapper<>(Employee.class);
Employee employee = jdbcTemplate.queryForObject(sql, rowMapper,id);
return employee;
} }
第四条使用:
/**
* 不推荐使用 JdbcDaoSupport, 而推荐直接使用 JdbcTempate 作为 Dao 类的成员变量
*/
@Repository
public class DepartmentDao extends JdbcDaoSupport{ @Autowired
public void setDataSource2(DataSource dataSource){
setDataSource(dataSource);
} public Department get(Integer id){
String sql = "SELECT id, dept_name name FROM departments WHERE id = ?";
RowMapper<Department> rowMapper = new BeanPropertyRowMapper<>(Department.class);
return getJdbcTemplate().queryForObject(sql, rowMapper, id);
} }
2. 在 JDBC 模板中使用具名参数
在经典的 JDBC 用法中, SQL 参数是用占位符 ? 表示,并且受到位置的限制. 定位参数的问题在于, 一旦参数的顺序发生变化, 就必须改变参数绑定.
在 Spring JDBC 框架中, 绑定 SQL 参数的另一种选择是使用具名参数(named parameter).
具名参数: SQL 按名称(以冒号开头)而不是按位置进行指定. 具名参数更易于维护, 也提升了可读性. 具名参数由框架类在运行时用占位符取代
具名参数只在 NamedParameterJdbcTemplate 中得到支持
<!-- 配置 NamedParameterJdbcTemplate,该对象可以使用具名参数,为有参构造器-->
<bean id="namedParameterJdbcTemplate"
class="org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate">
<constructor-arg ref="dataSource"></constructor-arg>
</bean>
2.1参数:
在 SQL 语句中使用具名参数时, 可以在一个 Map 中提供参数值, 参数名为键,也可以使用 SqlParameterSource 参数
批量更新时可以提供 Map 或 SqlParameterSource 的数组
aaarticlea/png;base64,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" alt="" /> aaarticlea/png;base64,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" alt="" />
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAXQAAABbCAIAAADsjOlTAAAgAElEQVR4nO2deTxV2/vHl6HbRBMZMkTmOUNRaVRORHUQx5xOp1JKCuU20aAkKlEalCZ1Nct1oyiliTLECSXzdMwOIXGe3x+L44S6bt/8usN+v/xhr7322s/eZ+/Pftaz1n42AgICAoJBAP1sAwgICP6dEOJCQEAwKBDiQkBAMCgQ4kJAQDAoEOJCQEAwKBDiQkBAMCgQ4kJAQDAooMfBbt6ebgE3k3Ob/6eGOgtvp8cfTyiCls4B1W9+FxV1xM1ty27PW/QCZr/btFZnxka4uXm6uYUmvCtu+2JdY9aVyINubr8e3PVHHqOF9f12f6pnPD97aJeb28HIyLfMgW/3+d2l5IfnEsvg8/+wcwKCfzHooBYagZAs9WQM47sbaa5Miwlfo2VvM2vPc2gcmLhU31vnooQQGoVW3nhc9rm/KvW517aYI4QQmubzx/PGL9aVXl9mJ4EQkhjm/oBeN7Bd9m97Ef3YfOnhCEnY2N0qH8gWrI76kpe3Qx3lbFaQA9LgEyEuBAT9gY7ORqJDkabLuQf1391ITfK+WVMRGq1neyx7wNvEu3voIjRCYuiGuy9q+q3SkHfb2wGhoQgZ+j1I+dKrKL+zfJUqQqNUhXck5tT/D+LSWfHu9FINEYRUaauiKwe2Tf6DzcrKCAkZbrxQ9P17JiD4d4OC5iCx4WjK5kvxVe2tDdWY+pbPve9XVktrY3UPdR8/Ym+D1d7WmPG7x1QNhEZpLfV5UFNS09TS3tn1OG9vrmFvUstsbOt5ytfEe3jqIcQvPXzTH8+La5vxrmvra3u6Pw15d3wcERqOEOlgH3GJclqthtAYNdGdXeLCav/4sb66uqauuqXjc1vjR9xgTX1tax/XouNjY31NdXV1dU1jfU1R7llzbXGE1Fat/p1DXDqaPzZwHG99S2sHAACr89NHRtLVVXJyCAnOogY+rWHUNLd24F10fm6p7zncprb27/5ZCAj++aCgOUh8JJr+67mLty4FWqhqqKqqqqkv3n09oeyLeo0v/PyXq6mpqqqqqqqqqasbb/f5vZgF0NmYHrt9joHkyBFciGfEaBEZvclT/S6+rm4FgE95mVfc9bTVuzaaSVtxKp3d9+oSl7FKI9b/dukoZYuZqqqamvps8/knXhd26chAxSW3EQCAmXr8uJOGhr6J9t4/roc67Fimqqqqpqa/eFbQi1zOLlUns/r+rpVLpqipqarOsFvsdeF20BJdGZ5e4lL9cOsOq67DVVXTUF+6/0giAwA+VTy+4aqtKzpsGEK8fAJicjOnzTl2K6+pAwDKE27uWazevc0816CInB/6WxEQ/KNAwQZo4igkqKShKj+BH3UjqLpgx+U/inGdzsqkPXstRYQRJ4JCS3z8XtW2MhIuLeEd98UqB594BkDBswsbZivyc5Rz8yjZOJxOzvvIAoC6eA/PWQgNHc0jo6UsjLjZtVQWuV3N+sAEgMYPf0Vc6h56ekxBCCEkoiYnjH5hNzjJwODIw6cVnwEAWsvz47yd5ooMY6/9RVpVXXQcPzeasrZLXDpbSh5s2bJo9OgvDkpU0vbwSTqzreD6sVlo6BerXIMymFXvQs+6aCtznoih4pqrAiOy2zqIoAzBfxIUsgBJjUIIiU6YZrluy7ZfvTa5LFIYPwwh0QW2h7JrAFis7DtW48YhxCNpRvPx9Tt8cN9KfZXxCPHrTz2cVtVclHPHe7PBRDEuNFxM2WDF7m0+Mc9KSgv+2LtKbSxCI6QNV7ls2bZt2zrbKcIjEEKSricym9sAmA89POfhu3C0/Hzqmi3bXK30tEYihHjGrfktpogF0PyXxKX+ya6dJNwgn8xcR6rntm3rrZZojUAIIRn3/fcZnQBN9Osn5gjyIIREdfVsPLZ5uW+wmyGPEBdCaMb61b9XA0Bn47PzC7iHIsSvYu2yZ//BwL277HUmjUZI0NjoXG5z47v0K5tWTxcSQohPWtt4zb69Bx+lFr2J3jlFaSTvaBmbjUeOHDly5IjfOoqmwBB+uVkbE7NbCXkh+C+CguchiRFo9BQPn0d1uOhz2n6a7phhSEzD6PzTT9ABmfHb3dfY7TgU+YEJtR+ePoj2JU+X4kK/TJu+7VERAAAzzW/+DB4kOMMuJBe38eo32xkyCA2TXeByr6EVAKC99O7RnaaLKLYHr2QxP2JxmYUQ70geRbfjyc0AAG9CD8waiYbyI+uwyNwOgOa8W7vsvy0uo1XHb3+Y0wCAxWU+QtxDkbRz4OP6dgDoeJcSuliB+xceZLT2FL0J2vJveVkhxItGidPCI0oBAKAm/txsafFhCE1Zu/r3GgDoZL64s9GVZucber/k4+fK3IdR13cYqosiNHKB8cHkWgCA0kQvzckIiRltuojHl0ovuOtPREhEbvqO44mJiYmJifeOeBkr8KNRExR9I8taieALwX+QroCujuuF+Dp24csrS7SlEK/UvB2Xi+ETsD7XFhW/y8l++ygm0GEaT7fbP262/s7HxQAAjOd7507jQQLTKIHp0AkAzbGhVpNHoSHiWtsuFnz+xG6YhQFgx1z4Jg53jX6BIzGlcVfWyqCRY5D1mevvOgBaC37ft3IYGsGFFh6Mf9X0hd0Vd1esVkdonMakPU/fMwEA6p/s2jETIT7R0W7RTyuxr9DKeHnUdfjwkUjG1O9xYUd99oVVsxAvD5qzJvxN1zhPW1nuabLmBM6A7ue2qoLCd7nZb2Mjd5pNZndzhBeZHHpVBwCs93GbNdQREjV0OfMBADo6U/aTdUVRf/BPtDuUzGwgXBeC/x7d4rLp4sOeoejX18nTZBEaP8M2KAs+tpUlHzZbpik9SVpMTGjsCG5ubi4uLi6Exs3W34XFpfzp7jl6PEhAzyogFdoBgPnHCYo6HxKUnXY8jtnR70BxdZe4SA3fFJPMYAEAlMRddZHtFpd2AFbVy+M7NNAoXrRgfx9xiXJaoYyQmO7SM7llrQAA9U92/ToDcY+dqBeQkt0VwW2renXSYwQvH+Kd5nUjjcnMubBSH43gQfa7ogu6PKHWig8XlmmLIaS6avXvVQAs+EiP3bXARF1KWlpMVHD0cMTFxcWFuBASXmQS8KoOADpy7m1SV0NIdMG6M3kAHR/ro5wXqI5EiJuLh4eHCyGEEBfvL8NH8vOPktCYt/N+XVXHj/3VCAj+AaBjc5H4CCTheCyygF34+hp56iTELblgZ2R+EzP99IrpY3gQGjZpmtOJuPsJ8X/4W8yYxIWGTZ+x8wtxEZxGCUyDzwDQdO8ERYMfDZPU2f1bKYfnwkF1j+dy93lFJwBA8b2IHs+lHQBqXp/co4f4eZGqx62HVZxbf8w5SzEfj5CknvX5vIo2AID6J7u2z0Rc/GJCXg+Suyq3Vb067j5iGB+SWOibkNden32epo9+4UEk14i3FV1VKj6ct9DC4hLbCFDf/MzPWOkXhNBodeP15+Pi43+/5bNQYwJC/IaLvhSXCYYuZ/MBOj/WXHeaJ4/QEE3t1SdvPUlMTExMfPz02YvklJSXr9Jff6hpJybaEfwHQcEGSIIP/TLJyf1Cedc82bzgTfpCI5GQmklEUkNl0fXl2uI8aJiW0d4H1QAAUBe+xHACQsP0u8Wl9Mmu2XrcaJj2sl0vcRPJlylTJRAaqWDqmYgniEBn/h83djqv2+S27+77kjb4+Njzm+LyCQCaMs8fWYh+4UYjlB133ijuibq0PAleoyvBjYZLT1lzq6a6AwDHXAwQ4h2OVD1PvmoFAIDSrIs22jxDEZpHPf6mEVryrrmTEeJB4xVcI6NwN7D5xfUlSlIjEdJxXvOgBdoL3p9eIjGOG42aYXPi9ScAgNaio7N0BRDiX9gtLm9jXNXUEOKb7XwEDza/DVgzWRChieqrQpK7TKxM+T1457YD/odfvv9E+C0E/0VQiCGaOAohJCip5eQVGhoaGrh/ubbEKITGzrTY97a0o7Lsmq2qEEJDtKY67gs9ffzEofUURR4+hNCY+bP2PisHAGh47TdjzhiEhFVmrDp0LOyPFwUfss5utZ00EvGOVbHe5XssNDT0uM9yHRWEEFIyD6cXt8GnPxGXNgDoqEl7EjxdByGE+CbNXuV5PDQ0NDQ0NDj0V7Km5FCERoyfv/Hy+04sJByjRUKay7x2BoeGHli/cvZohNAwRa+g+KoOgIa0SwGT+bkQQpNICzcdDT0RdNBj8RSEeBFCM9Z3icspkwn8CI2cMW/NwbBTIcf2rFwqhYYihITIS4LSmQDQWZz4q6L2SIQkp8zfEHL24sO0vJQIFz25YQgJyhl5hB4LDQ3dbaUngRAaJbv0+ovG9v9hBjEBwT8VFDgNjUOIR1ho/Bj+nskm/BJTXIKv5gFAc2dGmPMieT72Om5hqclKsmOGIDRJceVvr1uABVAZS6NqDemuMWP1pfdNLTn3g+1VxHomlCCE0PiZ85ddflTVDgB1ses3qCGExqHVt5LKOwEACqPPOwkhxI2WHI/IwRN1O1sqH140nzd9fN9Q6dixU1Y5n31T2d3j6Bot4h3OJSwjMQ6xrRkmr+9w5mUWjig1F7yNdFmkOYYdlUa848VFh3IhhJRXOETXA9Q3Pw+ymSXeY/fQCTKaCtIjuBCPmu7m3999AoC2wuvmFgpcXRW4TD1/L6c/8/O3EBbi5TCQd5ys+dZjyU2fCGkh+E+CwsxEtGVETA/4++/a6SAgICggIDheSM/19M337V3efEdLdfzuNcZywuMFBYTU5ZxO3817FLWZrC8qMYUccLMUPgOwWpIi3cm6IsJC48cLiVN23vlQCdDZnPY4ZLm0mJCggICAgICg3BLT/YnvP3ZN+qh7snvPIhERGR3pHXGvGJ0AAGUPb27VE5mkIOJ8+W5+T6CmoyknYY/RItnxuB0BAQEBwfFCJr9ujStv5Xjhsf7Jrp2zEBotNYQadszHcPVMAQFBQRG12Q5n0/OaWOygB6ut4sM1l6XTJIQEBQRkFujSjl0KsiXpiovM8/B4UA3Ago6GkrueNnOkhMYLCkzQm+x68cGHuKtOC3REJ810PHW/DgCAVRcbRiNNFhYSEhSVkKf6P2I0sD41Pz+wf5lw99GOV7XZFZLysd83MgkI/gug2gL6u2x6cUNjY319Bb2LD1Ufv8hw0F5bWZRDp9Ppb/NyK1s6gPW5uiQ/KzM3r6K2DVgAAO3NjJI8vHF2UWVj2ycAABarqSInu7vR3JLihp6HeEdzZWU+nZ79LruC2YJvwfamhvL39Owceml945ch0I76ouJc+hcU19Z8eeN2iQufGO+G6Ic5HxgFdDqd/vZ9QfnHPgfdxij+kE2n0+m5RfmM5ramsqIPb+l55eVN3S1+qi4ryKbT6fTs/LzqNhZ0tFUU5mVlvstn1HdV+dRYVvieTqfT32bnlFQ1f2YBQEdDQ2mPge/K6pqIOC7Bf5h/T7KoLnEZLsy99ubjqj+vT0BAMKj8e8SlLsF9szpCaAhyuBJXRMyJJSD4yfx7xKU5+7erOywsbFZann6ZVUOM/hIQ/GT+PeJCQEDwt4IQFwICgkGBEBcCAoJBgRAXAgKCQYEQFwICgkGBEBcCAoJBgRAXAgKCQYEQFwICgkGBEBcCAoJBgRAXAgKCQYEQFwICgkGBEBcCAoJBgRAXAgKCQYEQFwICgkGBEBcCAoJBgRAXAgKCQYEQFwICgkGBEBcCAoJBgRAXAgKCQYEQFwICgkGBEJcubt686eLi4uDg4OLiUlJSAgBRUVEODg5OTk6bNm3Kzc392Qb+RyksLPTw8MjLy/vZhhD8Zf6auJSXlwcFBYWFhRUUFPRdm5OTExAQEBgYeObMmX7vxrdv3549e7ampub7bO1FUlLS5cuX29t/zFdELC0t+fj4TExMbG1tCwsLASAyMtLExERfXx8hdO3atT9t4fnz50FBQeHh4RcvXiwrK/shVv0pZWVlwcHBYWFh4eHhr1696rU2Ozv7yJEj586dCw8PDw4ODggIOHr0aHh4eHh4+LFjx5KSkga+ozt37hw/fjw8PPzWrVsfP/b90NygkJ6evnPnTkdHx5ycHFxSUwOBgRAQAAEBcPIk/JUj6J/cXAgLAwbjf23nB1JbW3vq1KmAgICTJ08+ffr0Z5vz/fw1cXnz5o26ujo3N3dYWFjftffu3VNXV1dWVubh4Tl8+HDfCtHR0aampj/qKRQcHGxrazvwC724uPjt27ednf1/utnc3Nzc3LxveXZ2tqys7OXLl/+0/ZMnT0pKSuLvRN+7d2+AVnFSVVWVnJz86tWrgR9UWlqajo4ONzc3Qmjz5s291sbExMjKymKTREVF1dXVpaWl8aK4uPixY8cGbpubm5ugoCBCSFpaGnt2f0ppaWlycvKbN2+++wHg4+MjIyPDZDLxYlERhIaCunrXHy8vLFrUU/ndO/iOKys2FkxMoFu7/hYUFBQYGhqqq6vz8fFZWVn9bHO+n78mLu3t7WlpaZMmTQoODu67tq2tjcFg5ObmKikp+fj49K3AYrGampo6On7MR4U+f/7c1NTEYg30m6k+Pj4kEulre7ewsFi2bFnf8pycHHl5+YiIiD9tv7m5OTw8HN+68fHxA7SKk4iIiNGjR4uLi799+3aAm7S3t799+1ZGRgYhtGXLll5rW1tb4+Pjhw8fjhA6ePAgg8G4c+cOtvDkyZOtra0Dt621tdXT0xMhJCUlNUBxOXDgwOjRo3V1devr6we+IzZMJnP79u2zZs1iS627O8yeDVVVUFUFDAY4OADnL2ZnBzTad+wHmprgB12SP4aOjo6amhoGg7F06VIjI6Ofbc7385djLnV1dWpqakePHv1ahfb2dh0dnX7F5efi6uo6efLkr91Ry5Yt69dzyczMlJOTG4i4AEBcXBy+dR88ePAdFp48eRIhxMXF9fr164Fv1dzcrK6ujhDy8vLqu/bdu3djx45FCF24cAEAXr9+zcPDgxCKior6q+YdOHAAISQnJ1daWjqQ+lu3bkUITZw4sbKy8q/uCwDc3d0dHBxycnLYzwMaDXR0eiqUl3/hqpBIQCZ/x37+vjg5OS3i9M3+aSAKhbJo0SISiUQikXbs2IFLvb29zczMjhw5AgAsFsvd3d3c3Pz06dMAUFtbq6GhoaioiDdZvnx5c3MzZ4t1dXVaWlq7d+/mLPT19SWRSIsXL3Z1da2q6v0lZw8PD9yaqamps7Pzt6/dpqam9evXk0ikpUuX+vr6fv7c9Wn4ixcvmpqabt++vbW1de/evSQS6cSJEwDQ2tq6bt06EokkLS09ZsyY+fPnGxkZvXjxolezP0Rc7ty5w8XFhRDS0dHBx7tr1y7OCsXFxfb29sbGxth+tgPo6elJIpFUVVURQry8vNOmTSORSKdOneLcNioqytzcHJ+oZcuWWVtbnzlzBgBqa2uxuCgrK5ubmxsbG1tbW3/48AFvlZ6ePmbMGIQQbu3JkydYXGJiYmJiYkxMTKytra2trU1MTLDB7Gugr8G4h6WgoMD+gVJSUpYtW7Zw4UISiWRubn79+nVsz4oVK0gkEvanRo4cOWfOHBKJ1EvOTp48SSaTSSSSkZGRtbV1386yoaGhmZkZZ8nr17B1K1Cp0NjYU/j+PSxbBiQSCAmBqCiQSGBrC8XFXWufPgVjY7CxAQYDbtwAEglcXKCtDQDg0CEgkcDUFFxcgK1+jx+DsTHY2UFNDURGAokE7u5fWJWbC8bGQCLBsmVAJoOvb3/XwZc0Nzc7OTnhH27JkiVeXl5NTU141YMHD0jdWFhY3Lhxg3NDOzs7ExOTP9/B3xWEEFq0aBGVSqVSqTQa7cSJEwwGIzg4WFxcfObMmSwWi8Vi+fn5CQoKmpqaAkBdXZ26urqenh61m927d2dmZrJb7FdcQkNDqVSqnp7euHHjsrOz2eXFxcWBgYE0Gg03paurixDqe+dz8vHjx71791KpVDk5OXV1dbbPfOfOnVmzZg0ZMsTR0dHNzY1Kpa5ZsyYsLKy2tnb37t1UKlVdXV1ISMjR0ZFGo2VkZPRq9seKi5GRET6ckSNHent7V1RUAEBiYqKxsTFCyMnJycvLS1NTU0JCIjQ0lMlk+vv7U6nUmTNnIoSGDBmydOlSKpUaGRmJm2WxWJGRkVOnThUQEKBSqStWrMD+0eLFiwGgoaFBQ0MDlwwdOpRMJiOEbG1tnz9/DgAZGRn9ikt0dHRiYuKcOXPwhgYGBtjg4cOH79q1q7y8HABSUlIcHR0RQmZmZlQqVUtLC4sLPpxbt25NnToVIbRp0yYvL6+JEydqampeuXKltrb2119/pVKpmpqaCKExY8bY2NhQqdSEhAR8OC0tLadPn5aWllZTU/Py8lqzZg1CyNra+tmzZ5wn09zcvG9H9e1bWL0aVq8GNzfA8evCQnB1BSoVJk6ESZOASgV3d6io6KqfmgpmZoAQWFmBpydQqbB7N3z6BAAQFgZUKsyYAaNGwZs3XfVfvYKlSwEhsLYGDw+gUmHlSggMBNwRTEgAT09YtQqoVBg6FKSkIDT0Ty6JlJSUzZs341O0fv16eXn5kSNHYlfu+vXrGzZswFf+ihUrRowYsXbtWs5t//HiMnLkSHYPPyoqSlhYODU1FQBcXFzmzZvHDn/a29tjcWEwGCoqKidPnsTlhYWFYmJi+BGK6VdcMDdu3JCXl+dUooSEBGFh4YcPH+LFjIwMGo02wHHfPXv2TJ06lf0QAIA7d+4MHz586tSp7969A4CDBw/KyMiwffLt27fr6+t/rbUfJS74XsX3ybVr1/AilsvIyMgFCxZQqdTo6Ojff//d0tISx1mLu5+zly9fRgiNGjWq1xno7OzEKmBtbY1LvLy8Fi1ahB0ftuciIyNz+PBhBoMhJyeHEMI908zMzH7F5bfffgOAhIQEbCEelWAbjIXJz88PISQkJIS1Zv/+/bhbhE/p0aNHjYyMNm7c+PDhw7t3786ePRshNG3aNHb4du/evQghFRWVXr5tVVUVjiubmZndvn371KlTQ4YM6Rsz6ldcAKChASwsYOZM2LIFXr7krA/29v38KEVFIC4OCgrQb0fw7l2QlYXU1J6S/HwQFQUlJfj9dwCAxEQQFobERAAAKhWUlbuq6erC+vX9NNiLe/fuLVmy5OTJk7dv366trX327Jmzs3NjYyMALFiwwMLCgl3T0NBw9erVnNv+G8QltfvU3rhxQ1paOj09HQDWrFljYGDAFhdra+slS5ZAt7iwBxpycnJkZWXPnz/PbvEb4hIRESEvL5+VlcUuSUxMlJKSiouL+w7Td+7cqauryykuYWFhCgoK7DvzwIEDqqqqjO5hxi1btkyfPr0N+8R9+LHigp/Sly5dwt7Ey+6b4NOnT4mJiRISEpKSkqKior1CGGfPnkUI8fPz45+ATWdnp5GREULI0tKy704ZDAbuT3l6egJAWVkZHrTy9fWFr4sLdotiYmL6GjxkyBBscGBgIBYX3MnavXt3L4Obm5sjIyP5+PgmTZokICCAEJo3b94n7BgA7Nq1C3fWenWEq6urscGCgoLKysoqKioaGhpqamq4383GxMSk318EAD5/hvZ2sLf/YrRo6VLo1t4vSE8HWVm4erXfluD6dZCVhbS0npLXr0FGBm7e7FqMiwMpKXjyBAAgIACWLoXMTMjMhEWLYP/+/tvsRXl5+dy5c5WVlX18fDhj4aamppyDQfPnz3d2dubc8N8gLmndp/bmzZtSUlL4yl65cuXcuXPZ9WxsbJYuXQrd4sIOFuTm5srIyISHh7NrMplMbW3tvXv39t3ZlStXFBQUcjjG/RITEydOnMgpLh0dHQMcANq5c6eenh5ngDYsLExZWZmtJgcOHJg8eXJtbS1e3LRpk66uLvvS78VgiAv2RH755Rd8r7JYrKdPn06aNGn48OFXrlzx8fFBCMnLy7N9q1OnTmFx6dVr6+zsXLhwIUKI81pksVhY+mtra9XU1BBCOFxSXFwsLi6Oh4cA4M2bN3x8fAghPHvg+fPnWFyuXr0KANHR0X0N5uXl7SUu+fn50C0ubIM7OzsjIyMlJSXHjx9/7949JycnhNCCBQvYD6Rt27ZhcamuruY8nOrqaiUlJYTQmjVr8vPz8/Pz379/n5OT02sCFIVCsbS05Py92tuBc1Dbzg7mzOlZNDGBfsdt09NBTq7LDenLjRsgJwcczjS8fg2ysnD/ftfivXsgKwu4x1ZdDRERoKgISkpw8+YXoZ9v0NHRUVxcnJ+fv3bt2pUrV7Lj0yYmJt8WFwcHB9xd4Gyqra2tra1t4IOkPxE0cuRItitx+/btCRMmYK1Zvnz5rFmz2PVsbW1xdI3BYCgpKeFYKQDk5+dLSEicPXuWXbOtrU1bW3t/f6p+7do1BQUFdqwRAB4+fCgqKsoeuH358iWZTKbT6QMx3cfHR09Pj3Peyvnz55WUlLAPDwD79++fPHkye5aEq6urtrb211r7mrhkZWV9h7g8efIEAK5evYoX8b165coVGRkZbm5u3CUJCgrCjgBb/k6cOIEQ4uPj63UGOjs7DQwMEEIUCgWXbNy4cfr06fgkt7a2YnHZtm0bABQXF4uJiSGEAgICACAjIwN3OvADICUlBUeF8BGxxaWXwbhb5O/vj8UFP2/37duHxQV79QEBAWJiYmJiYrhL5eLighAyNDRkm71lyxYsLo1f3oVVVVWTJk1CCO3ZsweXrF69euHChVeuXOGslpmZ6enpuWrVKnavKigINm7sqWBrC/Pm9SziIGtf6HSQk4O7d7/2k4Gc3BfzXN68ARkZiI3tWvzjD5CRgZQUAIBz52DlSrh7F2JjYYB3d2xs7PLly/EjsKCgwMPDw8rKCo/N48A8u6ahoeGaNWs4t3V0dMRhNTaRkZFz5swxNzdnd6X/ziBeXl5DQ0MKhUKhUJycnMLCwvBzJiEhYevWrVZWVnjV2LFj+fn59+3bV1BQIC8vr6SkhMttbW39/f1xjPbZs2cUCoVMJnNxcUJt4zQAABKySURBVMnIyFAolJ07d2KdPnr0KIVCwRE+vDs8dlBWVhYaGuro6Ihbs7Gx8fPz+/ZoUXNz87Zt2ygUipSUFA8Pj7m5ua2tLZ1Oj42NxffY0qVLcRQJ3xtWVlb4wZuUlLR9+3YLCwsKhdJ3rNfc3NzGxqbv7kpLSxUVFQcyiQ44YhYzZsygUCiTJ08eNWqUv78/dqaeP39OoVAQQjY2Nvb29lJSUriymZkZ1nc6nb5hwwYcXqVQKBcvXsTNslisqKgofX39MWPGUCgUKysrhJCenl5UVNS7d+9sbGxwO5KSkkFBQe/evcOz3eTk5IKCgmpqao4fPz527Fg1NTUKhYIjI56enu/fvweAu3fvYq2ZO3cuNpiPj8/Pzw/7Junp6TjaunDhQgqFghUBIWRhYUGn02NiYgwNDYcMGbJq1So7O7tx48YhhIYNG+bs7Iwjvi9evLC1tUUILV68mEKhxHbfry0tLZcvX5aXl5eUlKRQKLjHZ2pq+vjx417nc/v27cLCwuyn9KpVgBAsWwYUClAo4Or6RRglOhrc3IBCgdWrgT1BOiUFDAwAIZgyBSiUL+Kvx48DhQI6OoAQzJ8PFAo8eACZmV31dXW79CU+HhCC2bMhLQ327YMRI8DZGdavBwcHGMh8A9zVxT8ojUZbt25dcHAwHoWIjo52c3PDV76VlZWwsDCOOlVUVKxbt45CoQgICPDx8VEolJUrV+JrePv27di1HPhMqJ8I4uXlXbp0KRaFffv2ca7Lysoid+Pg4ODo6Ojt7c1gMPz9/W1sbHC5s7Mzu2OSlJREJpPNzMycnJxsbW3JZLKXlxcWl0OHDpHJZAqFsmLFCgsLCzKZfOvWLfaOduzYgVtjP8q+QVNTk4eHB5lMtrW1dXJyMjMzs7CwyMzMjImJsba2XrFihY2NDX7yP3361MnJyc7Oju0r5efnm5mZkcnkFPwk4oBMJktKSvr6+h49ehTHCJ49e+br6+vi4sLLy9vrofo10tPTaTQajUaztLTEx3vgwAHOCuXl5c7OzvgM2Nra0mi0FStWWFtbs4PctbW1GzZsWLZsGZlMPnfuHOe2sbGxDg4O+EQtX748OTkZAHJycvB5oNFodnZ2gYGBlZWV3t7eNBrNxsYmMDAQb3vo0CFra2symWxpaenh4cEeYktMTMTiYmxsbGNjQ6FQermc/RpMoVCwwenp6fgnwFcIjUZbvnz5qlWr2M5jbm7uihUrzM3NyWRyTEwMZ8vnz5+3s7Mjk8nm5uYrV67Er1z04u7du46OjgEBAfh1iuRkcHeHVauARgMaDfqM+MHbt0Cjgbs7sANreXng7AyenrBuHdBowPkzRkQAjQYuLuDpCc7OQKPB69dQVgbr1nXVT04GAGhqgm3bYO1aKCqC06dBWBhWrOgyYMuWnt7T13jz5g2VSsUnkEwmh345vPT48WN8BpycnMTExLy9vfE5p9Fo7JuOTCbb29vjazgtLc3ExISPj69XVO7vCUIIBQcH/6j3ff65HDp0SFdXV1NT08DAAD/Vw8LCNDU1tbW19fX1vz06/g8lLy8PPwkRQvv372crwt+K5OTkxYsXZ2ZmpqbC/fvw8CEkJHT93b8Pf/wBMTFdf3/8AffvQ0ICxMf3lMfGQkICPHzYteH9+z31cWX2qoQEiI2Fe/d6CuPiICYG7t3rqnDvHixaBFJSXXUSEkBfH6Sl4ckT+MogwV/gxYsXCgoK8+bN+8b8yYyMjLi4uMOHD1tYWOT8rV5Y+ApIRERETk7u7te6pP8Z2traGhsb6+rq6uvrsbfV2tqKF3/gKwt/K0JCQiZOnCgsLCwsLNxryO/vA4vFamho+Pz5s4sLyMuDomLPn5wcyMh88Scn17VKVrZ3Cf6Tl++p3Ks13KCsbO/22SWysiAuDmJiPRXExEBICIyN4cuA9V+mrq7O1NRUXFxcTEysV9iFEw8PDzk5OTs7O/Yl+jcHZWZmJicn9501S/Cvp7S0NCUlJSsrKysrKyUl5e/pubB59w5evPjJf6mpkJHRs5iWBunpkJEB/+Ob+Z8+fcrIyEhPT09LS/vGJK+8vLwXL17gOVz/CIh8LgQEBIMCIS4EBASDAiEuBP9OXr58GRERcfr06WvXrrW0tADA8+fPT58+HR4eHhUV9X1ZIAjYsFismJiYVM73JvpAiAvBz6ShAV69gqwsoNOhvh6amoBOBzodXr36n7LDsVisxYsXjxkzRlFR0cjICE/d8vX1VVRUlJCQEBAQeMn5VtJXKCwsTEtLy8/P/1qCsR8Ck8lMSUnJzMxkz/ZkU1RUlJaWlpmZmZ6e3tLSUlRUlJ6ejhe/kYunqanp9evXOE0XY9BS7HV2djo5Oa1evbqgoOBr04UJcSH4mSQmgpwcTJgAIiJw+TI8fAgiIiAqCtLSMLBJ0f3T0dExc+ZMKyurgoKCkpISPLZSW1tbUFBw4cKFCRMmsF/R/ga7du2SlJQ0Njbue9t/GxaL1dLSwk4G8m1evHghIyMzYcKEvhl29u3bJykpOWHCBD09vZycHLwoJiamr6/POc29F6mpqRoaGjIyMmJiYoOaVqmiooJGo/WaQ8wJIS4EP5OqKjhzBoYNA4Tg+HGIjgaEACE4cACKir6/2Y6Ojjlz5ri6uvZd9fz5c1lZ2YGkCszKyqJQKPLy8uz3MwYIg8Gws7PjnCb6DWpqak6fPj1mzJjQPukb6HS6nZ2dgIDAtWvXmExmdnb2kiVLJkyYEB0d3etFc07q6uru3bsXHR2tpKRk3+974j+ONWvWaGhofG0tIS4EP5n6epCSAoTgzBm4dw8QgiFDYGCvl32Vjo6OuXPn9noPEPPgwQMZGZmBeC4AcPjwYW1t7b/aLaqvrxcXF+8rFl+jrq5ORUXl+PHj/RogJyfHXvT19VVVVR1gs0uWLHFwcBhg5e8jKSlp69at27dv77f/RYgLwU+moAAkJAAhOHcOHj0ChICbG9h5o5hM2L8fvL3B27sre0t9PRw+DEeOgL9/V7mfH/R6kP8ocTly5IiIiIinp6e3t7e3t3evXPwvXrzA5fv378epP1JSUry9vTdu3Dh+/PhFixZ5e3tHRERwhiQKCwu9uwkMDMQfYMjPz1dWVr558yadTvf29g4JCWHXj4+PX7t2bWhoaHl5+YMHD9avX+/v789OG5KcnIyb8vX17RuiNjIyWr58Of6fxWJdvnz50KFDOANBZ2dnWFhYQEBAIk5UAwAA0dHRuLVeGbLb2toOHTqEVx08ePD27ducPb6rV68KCQlxZoBjQ4gLwU/m/XuQlgZVVTh2DM6fB01NGDUK8DuMOTlw5AhMmwZz54KBAXh5QWoqlJeDqSnw8MC4caCjAzo6MGMGnDv3RTfqR4nL8ePHR4wYMXnyZB0dHR0dHVdXV/b4yJMnT5ydnadNm2ZgYLBw4cLz588XFBRcu3ZNR0dHXV19+PDhEydO1NHRcXNzYzs+2dnZfn5+Ot2wc2iUlZUpKytv2bJl7969Ojo6hoaGd+7cYc9rTUpKkpaWfvTokbW1ta2tLS5ksVhJSUnr1q3DBpBIpLCwMPxyIxtOcens7HR1deXn58dJeTs6OqhU6ogRI3CDbW1tycnJOIWTgYEBmUy+ffs2dkY+fPhw6tQpY2NjAwOD6dOn8/HxKSoqcgahwsPD5eXl+53aR4gLwU8mKwuUlOD6dfj1V7C3h4cPQUkJ8KdZjh2DxYuhshLevoXUVLC3B0ND6OyEpibQ0oING4DJBCYTPnwAbW04dKinzR8lLvv371dTUysoKGAymUwmc9OmTXPnzsWeiJWV1Z49e2pqalJTUx89eqSuru7v7//p0ycmk5mVlaWoqBgQEMBkMvEoOIZGo+HwMMbGxgZP9q+srFRQUBASEvL392cymc+fP1dWVmaHbBITE+Xk5B4/fmxvb88Wl46ODltbW29vb2zA48ePJ0+e3OvFY05xAYCPHz/a2toaGBiwF01NTclkMjZAU1Nz27ZtqampqampkZGREydOxN/qCg8Pnz17dmxsbGpqKoPBOHDggKGhYS9xUVBQIMSF4O8IFpe4ONiyBSwtITUVVFUBv0FdWQnv30N9PVhagpYWjB0L7PxlM2bA9u1d/zOZoKgInG/U/yhx2bdvn5aWFvslcg8PDy0tLdwrycvLYzAYCQkJWlpa6urqXFxcOKE9AFRVVamqqvZKrAcA1tbWCxYsYC9WVVXh3BQFBQWKioq//vorHjKn0+ni4uJXu3PnxcfHKygoPH361NHRkZ0VhMVi5eXlVVZWPnr0SEtLS0NDg5ub28/Pj3N3vcQFAFavXs1pgLW1NU7SVFNTg0estLS0tLS0lJSUeHl58fuG1dXVUVFRenp6WlpaUVFRDQ0NxcXFvZIoycrK9vvWAiEuBD8ZLC5RUeDlBTY28OwZKCsDOz1DURGYmYGfH4SHg6EhdD93Ydo0YKfcZTBAQwM4k1v8KHHx9fWdPHkyO2eAh4fH9OnT2c7ImTNnzM3Nw8PDT58+PXHixEPdvlNhYaGysjJn6ASzfPnyfr9DlJeXp6ioeOnSJbz4+vVrWVlZ/CkFAIiLi5OQkHj16pW9vX2vzyGcO3fOzMwsPDz87Nmz0tLSvl9+i6CvuFCpVM5sXuwEaTi9pL29Pf4aZ0RERHx8PGcQ57fffgsPD7e0tAwKCuplfERExIQJE/p9S5sQF4KfTHk5qKrCnTtd4vL0KaiodAV0o6PBwQG6HQLw8enxXKZOBfYcjs+fYdIk2Lmzp80fJS44CMJe9PDwUFZWxuFMPz8/e3t7djqBadOm4dR/APDhwwcREZFeX4YBAHNzc87UsWFhYbgOk8lUUVFhZzt89eqVnJwcO/drYWGhv7+/h4fHli1b7ty5gws7OzsPHTpkZ2fHLpk5c2avXDxLlizp9Y61paUlZ3pJOzs77AqVlpaKiIhwJi06duwYzrWalJTEHva6f/++o6Pjvn372PJ69+7d9evXh4SE9DtaT4gLwc+kqAi8vGDYMLh7F1xdYfFieP4cBARg1SrIyoJLl8DKCsLC4ORJCAmBqVNh/Hi4ehUaGmDBAjA0hJAQCAmBgABwdITuuwyge56Lm5tb3z0mJycPcJ4LAOzbt4+fn//AgQMhISEhISHr1q1jf9fJzc1t3bp1Fy5cCAkJOXjw4KhRo+bPn48HX6qrqzdv3rx58+aQkJDo6Gj2aNHx48ednJxCurG0tPT19S0rK/P19R02bJiZmRlOAJaWljZ69GgHBwd2RqjGxkYBAQHOxGMdHR3u7u7Ozs7YAH9//zFjxsyZM+fZs2fV1dVhYWEhISESEhKqqqohISEXLlxoaGgAgNDQUE4D5OTkZGVlb968WVtbu3nzZnd3d1y+Z88ec3NzfCz4CxA+Pj4hISHnz5/fuHHjunXr2LNsqFSqkpLS184eIS4EP5Nnz0BXF6ZPh/fv4exZ2LcPKipg8WLQ0+vqGeXlwbx5oKsLurowbRpMnw729lBVBcuWwYQJXeXz5/eecdfZ2amvr29kZJSUlPT69Wuc5Ts/Pz8pKSkgIEBQUHCAnsuNGzfU1dVVumFn9sMEBQWpqqriVerq6mpqapwfvfDw8FBRUXF2duaMUMTExLBbu3nzJgCkpKRoa2urq6urqqriMeDi4uJ58+apqqqyM+zU1NSYmZnhb2ZyEhIS0suAwMDA7OzsGTNmqKioqKmpqampqaiozJ8/v6j7BMXGxrINwBXs7e3xDGZssIqKColEKutOFBodHc3ehaqqKqfAZWZmUqnU5cuXf20eECEuBD+TxkbIyAA6HcrLobAQ8vOhogJyciAjAwoLoa4OqqogIwPS0iAtDTIzgU6HrCzIzwdtbbC37yrPyIDqaqirA47PzICNjY2wsLCMjMz8+fPxsO6ePXtkZGQkJCSkpaUH+MHc1tZWBoNRWlpaUlJSUlLSa15sc3MzLi8tLWUwGBUVFZxxioaGhpKSkl5fPmhvby/pBkteW1tbWVkZg8EoLy/Hmczxt6LLy8vZn83p7Oysq6vjHHjCfPz4sZcBDQ0N7e3tZWVlJSUllZWVlZWVJSUlFRUV7Jkpnz9/ZhuAK7DHvLHBuJy9C/wBePYZ4DTJ3t5+48aN33gFlBAXgp/JixcwZw7MnAlaWjB1KujpgaYmzJgBM2fClCmgoQFaWqCvDzNn9vxNnw7q6sDDAyIiXSX6+qCl1Tum+/79+8ePH8fFxT19+hTfxjk5OXFxcQkJCSkpKd+YPk8wEFgs1qtXr3rNrOkFIS4EP5P8fDh0CA4e/Gt//v5w6hSEhPQuH0g6foL/NwhxISAgGBQIcSEgIBgUCHEhICAYFAhxISAgGBQIcSEgIBgUCHEhICAYFAhxISAgGBQIcSEgIBgUCHEhICAYFAhxISAgGBT+D2sJOJRvuwILAAAAAElFTkSuQmCC" alt="" />aaarticlea/png;base64,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" alt="" />
2.2 优缺点:
1).优点是: 若有多个参数,不用再直接对应位置,可以直接对应参数名,便于维护.
2).缺点是:比较麻烦.
2.3 demo:
@Test
public void testNamedParams(){
NamedParameterJdbcTemplate jdbcTemplate = ctx.getBean("namedParameterJdbcTemplate",NamedParameterJdbcTemplate.class); String sql = "insert into employees (name,email,dept_id) values(:name,:email,:dept_id)";
Map<String,Object> paramMap = new HashMap<String,Object>();
paramMap.put("name", "孙七");
paramMap.put("email", "sunqi@si.com");
paramMap.put("dept_id", 3);
jdbcTemplate.update(sql, paramMap); }
可以传入对象形式的参数:
/**
* 参数为对象形式
* 1.SQL语句中的参数名和类的属性要一致
*
*/
@Test
public void testNamedParams(){
NamedParameterJdbcTemplate namedParamjdbcTemplate = ctx.getBean("namedParameterJdbcTemplate",NamedParameterJdbcTemplate.class); String sql = "insert into employees (name,email,dept_id) values(:name,:email,:dept_id)"; Employee employee = new Employee();
employee.setName("赵八");
employee.setEmail("zhaoba@si.com");
employee.setDept_id(2); SqlParameterSource paramSource = new BeanPropertySqlParameterSource(employee);
namedParamjdbcTemplate.update(sql, paramSource); }
spring4-4-jdbc-02的更多相关文章
- Spring4:JDBC
数据库连接池 对一个简单的数据库应用,由于对数据库的访问不是很频繁,这时可以简单地在需要访问数据库时,就新创建一个连接,就完后就关闭它,这样做也不会带来什么性能上的开销.但是对于一个复杂的数据库应用, ...
- jdbc 02: 连接mysql,并实现删除与更新
jdbc连接mysql,并实现删除与更新 package com.examples.jdbc.o2_删除与更新; import java.sql.*; //连接与插入 /* jdbc删除操作 */ p ...
- Spring4 JDBC详解
Spring4 JDBC详解 在之前的Spring4 IOC详解 的文章中,并没有介绍使用外部属性的知识点.现在利用配置c3p0连接池的契机来一起学习.本章内容主要有两个部分:配置c3p0(重点)和 ...
- java反射(2)+Class.forName( )
在上一篇文章中说说java反射(1)我们已经了解了反射的基本概念以及它的原理,但是我们知道反射只能能用它来做些什么呢? 其实在我们很多已经很熟的框架中都有它的身影,例如Hibernate框架中的关联映 ...
- 02、JDBC查询
① 向数据库发送SQL查询语句 首先使用Statement声明一个SQL语句对象,然后让已创建的连接对象con调用方法createStatement()创建SQL语句对象. Statement sql ...
- Exception 02 : java.lang.ClassNotFoundException: Could not load requested class : com.mysql.jdbc.Driver
异常名称 java.lang.ClassNotFoundException: Could not load requested class : com.mysql.jdbc.Driver 异常详细信息 ...
- Java连接数据库 #02# JDBC经典套路
内容索引 LocalConnectionFactory.java LocalConnectionProxy.java ProfileDAO.java-2.0 ProfileDAOImpl.java-2 ...
- 02 JDBC相关
====================================================================================JDBC JAVA Databa ...
- spring4声明式事务—02 xml配置方式
1.配置普通的 controller,service ,dao 的bean. <!-- 配置 dao ,service --> <bean id="bookShopDao& ...
- Spring4笔记8--Spring与JDBC模板(IoC应用的例子)
Spring 与 JDBC模板: 为了避免直接使用 JDBC 而带来的复杂且冗长的代码,Spring 提供了一个强有力的模板类---JdbcTemplate 来简化 JDBC 操作.并且,数据源 Da ...
随机推荐
- adb error: device offline
adb 调试一直报错 $ adb shell error: device offline 解决办法: $ adb kill-server $ adb start-server * daemon not ...
- Emacs golang用户代码无法补全问题
现象:Emacs使用company-go可以正常补全标准库函数和go get安装库函数:而对于自已写的代码,只能补全当前包下的变量和函数. 原因:company-go后台是使用了gocode,而goc ...
- 关于PIPELINE,也许你应该知道
所谓流水线(pipeline)设计,通常来说是流水生产线. 同样,组合逻辑路径可以看作是一条生产线,路径上的每个逻辑单元都可以看作是一个阶段,都会产生时延. 如果不采用流水设计,前后级组合逻辑依次工作 ...
- (转)Inno Setup入门(二)——修改安装过程中的图片
本文转载自:http://blog.csdn.net/augusdi/article/details/8564793 修改安装过程中的图片 一般编译之后,安装过程中出现在左边图片是是下图这个样子的: ...
- OSGi学习-总结
本文是osgi实战一书的前几章读书总结 1. OSGi简介 Java缺少对高级模块化的支持,为了弥补Java在模块化方面的不足,大多数管理得当的项目都会要求建立一整套技术,包括: 适应逻辑结构的编程 ...
- Windows2012使用笔记
一.介绍 win 2012的名字于北京时间2012年4月18日公布,全称Windows Server 2012(下面简称win 2012),正式版于2012年9月4日发布.这是一套基于Windows ...
- 一些Java相关的
都是从<Thinking in Java>英文第四版中摘抄的 _______________________________________________________________ ...
- xhtml和html的区别
1.XHTML要求正确嵌套 错误:<p>XHTML文档<strong>与HTML的主要区别</p></strong> 正确:<p>XHTML ...
- ubuntu apt-get dpkg-scanpackages 制作本地软件源
1. 收集软件,下载的软件都在/var/cache/apt/archives目录下 例如openstack L版的所有包 keystone,glance nova neutron....... 举例: ...
- Ubuntu 下 安装 hadoop(转+修改)
出于需要在电脑上安装hadoop,版本:hadoop 1.2.1 (stable) 按照网上教程安装成功,把一点需要修改的地方说说. 参考博客: ubuntu12.04 hadoop单机模式和伪分布模 ...