Spring学习5--spring+JDBCTemplate
来源:互联网 发布:石家庄网络机柜 编辑:程序博客网 时间:2024/06/01 10:40
基于spring框架的JDBC技术
1。导入spring相关jar包,和applicationContext.xml文件
2.配置applicationContext.xml文件
<bean id="myDataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName" value="com.mysql.jdbc.Driver"></property> <property name="url" value="jdbc:mysql://localhost:3306/test"></property> <property name="username" value="root"></property> <property name="password" value="1234"></property> </bean> <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate"> <property name="dataSource" ref="myDataSource"></property> </bean> <!-- 自动扫描 --> <context:component-scan base-package="com.test"></context:component-scan>
3.创建实体类和UserMapper映射类
**Mapper映射类如下
public class EmpMapper implements RowMapper<Emp>{ @Override public Emp mapRow(ResultSet rs, int rowIndex) throws SQLException { Emp emp = new Emp(); emp.setDept(rs.getInt("dept")); emp.setDname(rs.getString("dname")); emp.setLoc(rs.getString("loc")); return emp; }}
4.创建Dao接口和Dao的实体类
接口:
public interface EmpDao { public List<Emp> findAll();}
JDBC实体类:
@Repositorypublic class JdbcEmpDao implements EmpDao{ private JdbcTemplate template; @Autowired public void setTemplate(JdbcTemplate template) { this.template = template; } @Override //增 public void addUser(User user) {15 String sql = "insert into user values(?,?,?)";16 this.getJdbcTemplate().update(sql, user.getId(), user.getUsername(),17 user.getPassword());18 }19 //删20 public void deleteUser(int id) {21 String sql = "delete from user where id=?";22 this.getJdbcTemplate().update(sql, id);23 24 }25 //改26 public void updateUser(User user) {27 String sql = "update user set username=?,password=? where id=?";28 this.getJdbcTemplate().update(sql, user.getUsername(),29 user.getPassword(), user.getId());30 }31 32 public String searchUserName(int id) {// 简单查询,按照ID查询,返回字符串33 String sql = "select username from user where id=?";34 // 返回类型为String(String.class)35 return this.getJdbcTemplate().queryForObject(sql, String.class, id);36 37 }39 public List<User> findAll() {// 复杂查询返回List集合40 String sql = "select * from user";41 return this.getJdbcTemplate().query(sql, new UserRowMapper());42 43 }}
上面四个步骤以后,就可以链接数据库,并从中读取内容了。
5.创建Controller类
@Controllerpublic class EmpListController { private EmpDao empDao; @Autowired public void setEmpDao(EmpDao empDao){ this.empDao = empDao; } @RequestMapping("/emp/list") public String execute(Model model){ List<Emp> list = empDao.findAll(); model.addAttribute("emps", list); return "emp_list"; }}
6.修改web.xml
<servlet> <servlet-name>SpringMVC</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:applicationContext.xml</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>SpringMVC</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping>
7.修改applicationContext.xml
<bean id="myDataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName" value="com.mysql.jdbc.Driver"></property> <property name="url" value="jdbc:mysql://localhost:3306/test"></property> <property name="username" value="root"></property> <property name="password" value="1234"></property> </bean> <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate"> <property name="dataSource" ref="myDataSource"></property> </bean> <context:component-scan base-package="com.test" /> <!-- 添加以下内容 --> <mvc:annotation-driven /> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/jsp/"></property> <property name="suffix" value=".jsp"></property> </bean>
8.编写请求后的显示jsp显示页面
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> ... <body> <table border="1"> <c:forEach items="${emps}" var="emp"> <tr> <td>${emp.dept }</td> <td>${emp.dname }</td> <td>${emp.loc }</td> </tr> </c:forEach> </table> </body>
9.整体结构目录如下
以上,就是Spring Web +JDBC的一整套流程。
0 0
- Spring学习5--spring+JDBCTemplate
- 学习Spring中的JdbcTemplate
- Spring JdbcTemplate学习笔记
- Spring学习之JdbcTemplate
- Spring JdbcTemplate基础学习
- Spring JDBCTemplate学习笔记
- 【Spring学习】之 JdbcTemplate
- spring学习之JdbcTemplate
- Spring之JDBCTemplate学习
- Spring 学习(三)----JdbcTemplate
- Spring学习之 jdbcTemplate操作
- spring学习笔记十七 JDBCTemplate
- Spring JdbcTemplate 与 事务管理 学习
- Spring JdbcTemplate 与 事务管理 学习
- spring学习笔记 -- day10 spring中的jdbcTemplate
- spring JdbcTemplate
- spring jdbcTemplate
- Spring JdbcTemplate
- 批量删除dbms_job创建的job
- Virtualbox WDDM 用户模式显示驱动之vboxWddmDispCloseAdapter
- 语音信号
- 报表展现部件获取数据TABLE(DataTable)
- 关于IOS 开发遇到的问题,Code 126 Copy Pods Resource
- Spring学习5--spring+JDBCTemplate
- 学习yii的进步时。。。。
- 逆序对的dp
- Kafka+Spark Streaming+Redis实时计算整合实践
- oracle 系统认证方式
- 对sharepoint网站进行预热提高访问速度
- Kafka+Spark Streaming+Redis实时计算整合实践
- Linux虚拟网络接口 Bond详解
- tomcat timeout