时间:2021-07-01 10:21:17 帮助过:33人阅读
为了使 JDBC 更加易于使用,Spring 在 JDBCAPI 上定义了一个抽象层,
以此建立一个JDBC存取框架,Spring Boot Spring Data-JPA。
作为 SpringJDBC 框架的核心, JDBC 模板的设计目的是为不同类型的JDBC操作提供模板方法.
每个模板方法都能控制整个过程,并允许覆盖过程中的特定任务。
通过这种方式,可以在尽可能保留灵活性的情况下,将数据库存取的工作量降到最低。
execute方法:
可以用于执行任何SQL语句,一般用于执行DDL语句;
update方法:
update方法用于执行新增、修改、删除等语句;
query方法:
用于执行查询相关语句;
call方法:
用于执行存储过程、函数相关语句。
使用JdbcTemplate完成对数据库的操作十分易用,可以和Spring框架做到非常完美的整合
JdbcTemplate仅仅只能支持简单的SQL操作,不支持关联映射和属性注入,所以在SQL方向的操作我们仍需使用MyBatis!
步骤一:导入依赖
- <!-- https:<span style="color: #008000;">//</span><span style="color: #008000;">mvnrepository.com/artifact/org.springframework/spring-jdbc --></span>
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-jdbc</artifactId>
- <version><span style="color: #800080;">5.1</span>.<span style="color: #800080;">5</span>.RELEASE</version>
- </dependency>
- <dependency>
- <groupId>mysql</groupId>
- <artifactId>mysql-connector-java</artifactId>
- <version><span style="color: #800080;">5.1</span>.<span style="color: #800080;">32</span></version>
- </dependency>
步骤二:创建实体类
- <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">class</span><span style="color: #000000;"> Student {
- </span><span style="color: #0000ff;">private</span><span style="color: #000000;"> Integer stuid;
- </span><span style="color: #0000ff;">private</span><span style="color: #000000;"> String stuname;
- </span><span style="color: #0000ff;">private</span><span style="color: #000000;"> Integer age;
- </span><span style="color: #0000ff;">public</span><span style="color: #000000;"> Integer getStuid() {
- </span><span style="color: #0000ff;">return</span><span style="color: #000000;"> stuid;
- }
- </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">void</span><span style="color: #000000;"> setStuid(Integer stuid) {
- </span><span style="color: #0000ff;">this</span>.stuid =<span style="color: #000000;"> stuid;
- }
- </span><span style="color: #0000ff;">public</span><span style="color: #000000;"> String getStuname() {
- </span><span style="color: #0000ff;">return</span><span style="color: #000000;"> stuname;
- }
- </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">void</span><span style="color: #000000;"> setStuname(String stuname) {
- </span><span style="color: #0000ff;">this</span>.stuname =<span style="color: #000000;"> stuname;
- }
- </span><span style="color: #0000ff;">public</span><span style="color: #000000;"> Integer getAge() {
- </span><span style="color: #0000ff;">return</span><span style="color: #000000;"> age;
- }
- </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">void</span><span style="color: #000000;"> setAge(Integer age) {
- </span><span style="color: #0000ff;">this</span>.age =<span style="color: #000000;"> age;
- }</span>
步骤三:DAO层
- <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">interface</span><span style="color: #000000;"> IStudentdao {
- </span><span style="color: #008000;">//</span><span style="color: #008000;">查询所有学生的方法</span>
- <span style="color: #0000ff;">public</span> List<Student><span style="color: #000000;"> allstu();
- }</span>
步骤四:DAO层实现类
- <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">class</span><span style="color: #000000;"> IStudentdaoimpl <span style="color: #ff0000;">extends JdbcDaoSupport</span> implements IStudentdao {
- </span><span style="color: #008000;">//</span><span style="color: #008000;">查询</span>
- <span style="color: #000000;"> @Override
- </span><span style="color: #0000ff;">public</span> List<Student><span style="color: #000000;"> allstu() {
- </span><span style="color: #008000;">//</span><span style="color: #008000;">获取JDBC模板</span>
- JdbcTemplate jdbcTemplate=<span style="color: #000000;">getJdbcTemplate();
- String sql</span>=<span style="color: #800000;">"</span><span style="color: #800000;">select * from student</span><span style="color: #800000;">"</span><span style="color: #000000;">;
- </span><span style="color: #008000;">//</span><span style="color: #008000;">执行查询操作</span>
- List<Student> query = jdbcTemplate.query(sql, <span style="color: #ff0000;">new RowMapper<Student>() {
- *//**
- *
- * @param rs 结果集
- * @param rowNum 当前行
- * @return 方法返回值
- * @throws SQLException
- *//*
- @Override
- public Student mapRow(ResultSet rs, int rowNum) throws SQLException {
- Student stu = new Student();
- stu.setStuid(rs.getInt("stuid"));
- stu.setStuname(rs.getString("stuname"));
- stu.setAge(rs.getInt("age"));
- return</span><span style="color: #000000;"><span style="color: #ff0000;"> stu;
- }<br></span></span>
- /*<br> //自动映射(可省略上方的query方法)
- RowMapper<Student> rowMapper= new BeanPropertyRowMapper<>(Student.class);<br> List<Student> query = jdbcTemplate.query(sql, rowMapper);<br> */
- <span style="color: #000000;"> });
- </span><span style="color: #0000ff;">return</span><span style="color: #000000;"> query;
- }
- }</span>
步骤五:Service层
- <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">interface</span><span style="color: #000000;"> IStudentservice {
- </span><span style="color: #008000;">//</span><span style="color: #008000;">查询所有学生的方法</span>
- <span style="color: #0000ff;">public</span> List<Student><span style="color: #000000;"> allstu();
- }</span>
步骤六:Service实现层
- <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">class</span><span style="color: #000000;"> IStudentserviceimpl implements IStudentservice {
- </span><span style="color: #0000ff;">private</span><span style="color: #000000;"> IStudentdao iStudentdao;
- </span><span style="color: #0000ff;">public</span><span style="color: #000000;"> IStudentdao getiStudentdao() {
- </span><span style="color: #0000ff;">return</span><span style="color: #000000;"> iStudentdao;
- }
- </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">void</span><span style="color: #000000;"> setiStudentdao(IStudentdao iStudentdao) {
- </span><span style="color: #0000ff;">this</span>.iStudentdao =<span style="color: #000000;"> iStudentdao;
- }
- @Override
- </span><span style="color: #0000ff;">public</span> List<Student><span style="color: #000000;"> allstu() {
- </span><span style="color: #0000ff;">return</span><span style="color: #000000;"> iStudentdao.allstu();
- }
- }</span>
步骤七:大配置文件(jdbc四个配置)
- jdbc.driver=<span style="color: #000000;">com.mysql.jdbc.Driver
- jdbc.url</span>=jdbc:mysql:<span style="color: #008000;">//</span><span style="color: #008000;">localhost:3306/student?useUniCode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull</span>
- jdbc.username=<span style="color: #000000;">root
- jdbc.password</span>=<span style="color: #800080;">123</span>
- <?xml version=<span style="color: #800000;">"</span><span style="color: #800000;">1.0</span><span style="color: #800000;">"</span> encoding=<span style="color: #800000;">"</span><span style="color: #800000;">UTF-8</span><span style="color: #800000;">"</span>?>
- <beans xmlns=<span style="color: #800000;">"</span><span style="color: #800000;">http://www.springframework.org/schema/beans</span><span style="color: #800000;">"</span><span style="color: #000000;">
- xmlns:xsi</span>=<span style="color: #800000;">"</span><span style="color: #800000;">http://www.w3.org/2001/XMLSchema-instance</span><span style="color: #800000;">"</span><span style="color: #000000;">
- xmlns:context</span>=<span style="color: #800000;">"</span><span style="color: #800000;">http://www.springframework.org/schema/context</span><span style="color: #800000;">"</span><span style="color: #000000;">
- xsi:schemaLocation</span>=<span style="color: #800000;">"</span><span style="color: #800000;">http://www.springframework.org/schema/beans</span>
- http:<span style="color: #008000;">//</span><span style="color: #008000;">www.springframework.org/schema/beans/spring-beans.xsd </span><span style="color: #008000; text-decoration: underline;">http://www.springframework.org/schema/context</span> <span style="color: #008000; text-decoration: underline;">http://www.springframework.org/schema/context/spring-context.xsd</span><span style="color: #008000;">"></span>
- <!--加载配置文件-->
- <context:property-placeholder location=<span style="color: #800000;">"</span><span style="color: #800000;">classpath:jdbc.properties</span><span style="color: #800000;">"</span>></context:property-placeholder>
- <!--<span style="color: #000000;">DateSource模板
- DriverManagerDataSource:Spring默认的数据源
- 数据源还有:c3p0 dbcp
- </span>-->
- <bean id=<span style="color: #800000;">"</span><span style="color: #800000;">dataSource</span><span style="color: #800000;">"</span> <span style="color: #0000ff;">class</span>=<span style="color: #800000;">"</span><span style="color: #800000;">org.springframework.jdbc.datasource.<span style="color: #ff0000;">DriverManagerDataSource</span></span><span style="color: #800000;">"</span>>
- <property name=<span style="color: #800000;">"</span><span style="color: #800000;">driverClassName</span><span style="color: #800000;">"</span> value=<span style="color: #800000;">"</span><span style="color: #800000;">${jdbc.driver}</span><span style="color: #800000;">"</span>></property>
- <property name=<span style="color: #800000;">"</span><span style="color: #800000;">url</span><span style="color: #800000;">"</span> value=<span style="color: #800000;">"</span><span style="color: #800000;">${jdbc.url}</span><span style="color: #800000;">"</span>></property>
- <property name=<span style="color: #800000;">"</span><span style="color: #800000;">username</span><span style="color: #800000;">"</span> value=<span style="color: #800000;">"</span><span style="color: #800000;">${jdbc.username}</span><span style="color: #800000;">"</span>></property>
- <property name=<span style="color: #800000;">"</span><span style="color: #800000;">password</span><span style="color: #800000;">"</span> value=<span style="color: #800000;">"</span><span style="color: #800000;">${jdbc.password}</span><span style="color: #800000;">"</span>></property>
- </bean>
- <!--植入JdbcTemplate-->
- <bean id=<span style="color: #800000;">"</span><span style="color: #800000;">jdbcTemplate</span><span style="color: #800000;">"</span> <span style="color: #0000ff;">class</span>=<span style="color: #800000;">"</span><span style="color: #800000;">org.springframework.jdbc.core.<span style="color: #ff0000;">JdbcTemplate</span></span><span style="color: #800000;">"</span>>
- <property name=<span style="color: #800000;">"</span><span style="color: #800000;">dataSource</span><span style="color: #800000;">"</span> <span style="color: #0000ff;">ref</span>=<span style="color: #800000;">"</span><span style="color: #800000;">dataSource</span><span style="color: #800000;">"</span>></property>
- </bean>
- <!--植入DAO层-->
- <bean id=<span style="color: #800000;">"</span><span style="color: #800000;">iStudentdao</span><span style="color: #800000;">"</span> <span style="color: #0000ff;">class</span>=<span style="color: #800000;">"</span><span style="color: #800000;">com.JdbcTemplate.dao.impl.IStudentdaoimpl</span><span style="color: #800000;">"</span>>
- <property name=<span style="color: #800000;">"</span><span style="color: #800000;">jdbcTemplate</span><span style="color: #800000;">"</span> <span style="color: #0000ff;">ref</span>=<span style="color: #800000;">"</span><span style="color: #800000;">jdbcTemplate</span><span style="color: #800000;">"</span>></property><br><br> <!--<br> 如果采用下面这条命令,可省略上面的植入JdbcTemplate的代码<br> -->
- <!-- <property name=<span style="color: #800000;">"</span><span style="color: #800000;">dataSource</span><span style="color: #800000;">"</span> <span style="color: #0000ff;">ref</span>=<span style="color: #800000;">"</span><span style="color: #800000;">dataSource</span><span style="color: #800000;">"</span>></property>-->
- </bean>
- <!--植入Service-->
- <bean id=<span style="color: #800000;">"</span><span style="color: #800000;">iStudentservice</span><span style="color: #800000;">"</span> <span style="color: #0000ff;">class</span>=<span style="color: #800000;">"</span><span style="color: #800000;">com.JdbcTemplate.service.impl.IStudentserviceimpl</span><span style="color: #800000;">"</span>>
- <property name=<span style="color: #800000;">"</span><span style="color: #800000;">iStudentdao</span><span style="color: #800000;">"</span> <span style="color: #0000ff;">ref</span>=<span style="color: #800000;">"</span><span style="color: #800000;">iStudentdao</span><span style="color: #800000;">"</span>></property>
- </bean>
- </beans>
步骤八:测试
- <span style="color: #000000;">@Test
- </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">void</span><span style="color: #000000;"> Demo01(){
- ApplicationContext atc</span>=<span style="color: #0000ff;">new</span> ClassPathXmlApplicationContext(<span style="color: #800000;">"</span><span style="color: #800000;">applicationContext.xml</span><span style="color: #800000;">"</span><span style="color: #000000;">);
- IStudentservice stu </span>= (IStudentservice)atc.getBean(<span style="color: #800000;">"</span><span style="color: #800000;">iStudentservice</span><span style="color: #800000;">"</span><span style="color: #000000;">);
- </span><span style="color: #008000;">//</span><span style="color: #008000;">查询stu</span>
- List<Student> allstu =<span style="color: #000000;"> stu.allstu();
- </span><span style="color: #0000ff;">for</span><span style="color: #000000;"> (Student atu:allstu){
- System.</span><span style="color: #0000ff;">out</span>.println(<span style="color: #800000;">"</span><span style="color: #800000;">名称:</span><span style="color: #800000;">"</span>+atu.getStuname()+<span style="color: #800000;">"</span><span style="color: #800000;">\t年龄:</span><span style="color: #800000;">"</span>+<span style="color: #000000;">atu.getAge());
- }
- }</span>
- <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">class</span><span style="color: #000000;"> stutest {
- <span style="color: #ff0000;"> ApplicationContext atc</span></span><span style="color: #ff0000;">=new ClassPathXmlApplicationContext("applicationContext.xml"</span><span style="color: #000000;"><span style="color: #ff0000;">);</span>
- }</span>
步骤一:DAO层
- <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">interface</span><span style="color: #000000;"> IStudentdao {
- </span><span style="color: #008000;">//</span><span style="color: #008000;">添加学生</span>
- <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span><span style="color: #000000;"> addstu(Student stu);
- }</span>
步骤二:
- <span style="color: #008000;">//</span><span style="color: #008000;">添加学生</span>
- <span style="color: #000000;"> @Override
- </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span><span style="color: #000000;"> addstu(Student stu) {
- </span><span style="color: #008000;">//</span><span style="color: #008000;">获取JDBC模板</span>
- JdbcTemplate jdbcTemplate=<span style="color: #000000;">getJdbcTemplate();
- String sql</span>=<span style="color: #800000;">"</span><span style="color: #800000;">insert into student values(default,?,?)</span><span style="color: #800000;">"</span><span style="color: #000000;">;
- Object [] obj</span>=<span style="color: #000000;">{stu.getStuname(),stu.getAge()};
- </span><span style="color: #0000ff;">int</span> update =<span style="color: #000000;"> jdbcTemplate.update(sql, obj);
- System.</span><span style="color: #0000ff;">out</span>.println(<span style="color: #800000;">"</span><span style="color: #800000;">返回值类型:</span><span style="color: #800000;">"</span>+<span style="color: #000000;">update);
- </span><span style="color: #0000ff;">return</span><span style="color: #000000;"> update;
- }</span>
步骤三:Service层
- <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">interface</span><span style="color: #000000;"> IStudentservice{
- </span><span style="color: #008000;">//</span><span style="color: #008000;">添加学生</span>
- <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span><span style="color: #000000;"> addstu(Student stu);
- }</span>
步骤四:Serviceimpl层
- <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">class</span><span style="color: #000000;"> IStudentserviceimpl implements IStudentservice {
- </span><span style="color: #0000ff;">private</span><span style="color: #000000;"> IStudentdao iStudentdao;
- </span><span style="color: #0000ff;">public</span><span style="color: #000000;"> IStudentdao getiStudentdao() {
- </span><span style="color: #0000ff;">return</span><span style="color: #000000;"> iStudentdao;
- }
- </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">void</span><span style="color: #000000;"> setiStudentdao(IStudentdao iStudentdao) {
- </span><span style="color: #0000ff;">this</span>.iStudentdao =<span style="color: #000000;"> iStudentdao;
- }
- @Override
- </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span><span style="color: #000000;"> addstu(Student stu) {
- </span><span style="color: #0000ff;">return</span><span style="color: #000000;"> iStudentdao.addstu(stu);
- }
- }</span>
步骤五:测试
- <span style="color: #000000;">@Test
- </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">void</span><span style="color: #000000;"> insert(){
- IStudentservice stu </span>= (IStudentservice)atc.getBean(<span style="color: #800000;">"</span><span style="color: #800000;">iStudentservice</span><span style="color: #800000;">"</span><span style="color: #000000;">);
- </span><span style="color: #008000;">//</span><span style="color: #008000;">添加</span>
- Student ss=<span style="color: #0000ff;">new</span><span style="color: #000000;"> Student();
- ss.setStuname(</span><span style="color: #800000;">"</span><span style="color: #800000;">阿斯顿</span><span style="color: #800000;">"</span><span style="color: #000000;">);
- ss.setAge(</span><span style="color: #800080;">123</span><span style="color: #000000;">);
- </span><span style="color: #0000ff;">int</span> addstu =<span style="color: #000000;"> stu.addstu(ss);
- }<br></span>
步骤一:DAO层
- <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">interface</span><span style="color: #000000;"> IStudentdao {
- </span><span style="color: #008000;">//</span><span style="color: #008000;">修改学生</span>
- <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span><span style="color: #000000;"> updatestu(Student stu);
- }</span>
步骤二:DAOimpl层
- <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">class</span><span style="color: #000000;"> IStudentdaoimpl extends JdbcDaoSupport implements IStudentdao {
- </span><span style="color: #008000;">//</span><span style="color: #008000;">修改学生</span>
- <span style="color: #000000;"> @Override
- </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span><span style="color: #000000;"> updatestu(Student stu) {
- </span><span style="color: #008000;">//</span><span style="color: #008000;">获取JDBC模板</span>
- JdbcTemplate jdbcTemplate=<span style="color: #000000;">getJdbcTemplate();
- Object [] obj</span>=<span style="color: #000000;">{stu.getStuname(),stu.getAge(),stu.getStuid()};
- String sql</span>=<span style="color: #800000;">"</span><span style="color: #800000;">update student set stuname=?,age=? where stuid=?</span><span style="color: #800000;">"</span><span style="color: #000000;">;
- </span><span style="color: #0000ff;">int</span> update =<span style="color: #000000;"> jdbcTemplate.update(sql, obj);
- System.</span><span style="color: #0000ff;">out</span>.println(<span style="color: #800000;">"</span><span style="color: #800000;">返回值类型:</span><span style="color: #800000;">"</span>+<span style="color: #000000;">update);
- </span><span style="color: #0000ff;">return</span><span style="color: #000000;"> update;
- }
- }</span>
步骤三:Service层
- <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">interface</span><span style="color: #000000;"> IStudentservice {
- </span><span style="color: #008000;">//</span><span style="color: #008000;">修改学生</span>
- <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span><span style="color: #000000;"> updatestu(Student stu);
- }</span>
步骤四:Serviceimpl
- <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">class</span><span style="color: #000000;"> IStudentserviceimpl implements IStudentservice {
- </span><span style="color: #0000ff;">private</span><span style="color: #000000;"> IStudentdao iStudentdao;
- </span><span style="color: #0000ff;">public</span><span style="color: #000000;"> IStudentdao getiStudentdao() {
- </span><span style="color: #0000ff;">return</span><span style="color: #000000;"> iStudentdao;
- }
- </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">void</span><span style="color: #000000;"> setiStudentdao(IStudentdao iStudentdao) {
- </span><span style="color: #0000ff;">this</span>.iStudentdao =<span style="color: #000000;"> iStudentdao;
- }
- @Override
- </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span><span style="color: #000000;"> updatestu(Student stu) {
- </span><span style="color: #0000ff;">return</span><span style="color: #000000;"> iStudentdao.updatestu(stu);
- }
- }</span>
步骤五:测试
- <span style="color: #000000;">@Test
- </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">void</span><span style="color: #000000;"> update(){
- IStudentservice stu </span>= (IStudentservice)atc.getBean(<span style="color: #800000;">"</span><span style="color: #800000;">iStudentservice</span><span style="color: #800000;">"</span><span style="color: #000000;">);
- </span><span style="color: #008000;">//</span><span style="color: #008000;">修改</span>
- Student sss=<span style="color: #0000ff;">new</span><span style="color: #000000;"> Student();
- sss.setStuname(</span><span style="color: #800000;">"</span><span style="color: #800000;">冯老板</span><span style="color: #800000;">"</span><span style="color: #000000;">);
- sss.setAge(</span><span style="color: #800080;">99</span><span style="color: #000000;">);
- sss.setStuid(</span><span><span style="color: #800080;">6</span></span><span>);</span>
- <span style="color: #0000ff;">int</span> updatestu =<span style="color: #000000;"> stu.updatestu(sss);
- }</span>
步骤一:DAO层
- <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">interface</span><span style="color: #000000;"> IStudentdao {
- </span><span style="color: #008000;">//</span><span style="color: #008000;">删除学生</span>
- <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span><span style="color: #000000;"> delstu(Student stu);
- }</span>
步骤二:DAOimpl层
- <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">class</span><span style="color: #000000;"> IStudentdaoimpl extends JdbcDaoSupport implements IStudentdao {
- </span><span style="color: #008000;">//</span><span style="color: #008000;">删除</span>
- <span style="color: #000000;"> @Override
- </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span><span style="color: #000000;"> delstu(Student stu) {
- </span><span style="color: #008000;">//</span><span style="color: #008000;">获取JDBC模板</span>
- JdbcTemplate jdbcTemplate=<span style="color: #000000;">getJdbcTemplate();
- Object [] obj</span>=<span style="color: #000000;">{stu.getStuid()};
- String sql</span>=<span style="color: #800000;">"</span><span style="color: #800000;">delete from Student where stuid=?</span><span style="color: #800000;">"</span><span style="color: #000000;">;
- </span><span style="color: #0000ff;">int</span> update =<span style="color: #000000;"> jdbcTemplate.update(sql, obj);
- System.</span><span style="color: #0000ff;">out</span>.println(<span style="color: #800000;">"</span><span style="color: #800000;">返回值类型:</span><span style="color: #800000;">"</span>+<span style="color: #000000;">update);
- </span><span style="color: #0000ff;">return</span><span style="color: #000000;"> update;
- }
- }</span>
步骤三:Service层
- <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">interface</span><span style="color: #000000;"> IStudentservice {
- </span><span style="color: #008000;">//</span><span style="color: #008000;">删除学生</span>
- <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span><span style="color: #000000;"> delstu(Student stu);
- }</span>
步骤四:Serviceimpl层
- <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">class</span><span style="color: #000000;"> IStudentserviceimpl implements IStudentservice {
- </span><span style="color: #0000ff;">private</span><span style="color: #000000;"> IStudentdao iStudentdao;
- </span><span style="color: #0000ff;">public</span><span style="color: #000000;"> IStudentdao getiStudentdao() {
- </span><span style="color: #0000ff;">return</span><span style="color: #000000;"> iStudentdao;
- }
- </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">void</span><span style="color: #000000;"> setiStudentdao(IStudentdao iStudentdao) {
- </span><span style="color: #0000ff;">this</span>.iStudentdao =<span style="color: #000000;"> iStudentdao;
- }
- @Override
- </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span><span style="color: #000000;"> delstu(Student stu) {
- </span><span style="color: #0000ff;">return</span><span style="color: #000000;"> iStudentdao.delstu(stu);
- }
- }</span>
步骤五:测试
- <span style="color: #000000;">@Test
- </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">void</span><span style="color: #000000;"> del(){
- IStudentservice stu </span>= (IStudentservice)atc.getBean(<span style="color: #800000;">"</span><span style="color: #800000;">iStudentservice</span><span style="color: #800000;">"</span><span style="color: #000000;">);
- </span><span style="color: #008000;">//</span><span style="color: #008000;">删除</span>
- Student sss=<span style="color: #0000ff;">new</span><span style="color: #000000;"> Student();
- sss.setStuid(</span><span style="color: #800080;">6</span><span style="color: #000000;">);
- </span><span style="color: #0000ff;">int</span> delstu =<span style="color: #000000;"> stu.delstu(sss);
- }</span>
步骤一:大配置文件
- <?xml version=<span style="color: #800000;">"</span><span style="color: #800000;">1.0</span><span style="color: #800000;">"</span> encoding=<span style="color: #800000;">"</span><span style="color: #800000;">UTF-8</span><span style="color: #800000;">"</span>?>
- <beans xmlns=<span style="color: #800000;">"</span><span style="color: #800000;">http://www.springframework.org/schema/beans</span><span style="color: #800000;">"</span><span style="color: #000000;">
- xmlns:xsi</span>=<span style="color: #800000;">"</span><span style="color: #800000;">http://www.w3.org/2001/XMLSchema-instance</span><span style="color: #800000;">"</span><span style="color: #000000;">
- xmlns:context</span>=<span style="color: #800000;">"</span><span style="color: #800000;">http://www.springframework.org/schema/context</span><span style="color: #800000;">"</span><span style="color: #000000;">
- xsi:schemaLocation</span>=<span style="color: #800000;">"</span><span style="color: #800000;">http://www.springframework.org/schema/beans</span>
- http:<span style="color: #008000;">//</span><span style="color: #008000;">www.springframework.org/schema/beans/spring-beans.xsd </span><span style="color: #008000; text-decoration: underline;">http://www.springframework.org/schema/context</span> <span style="color: #008000; text-decoration: underline;">http://www.springframework.org/schema/context/spring-context.xsd</span><span style="color: #008000;">"></span>
- <!--扫描注解-->
- <context:component-scan <span style="color: #0000ff;">base</span>-package=<span style="color: #800000;">"</span><span style="color: #800000;">com.JdbcTemplate</span><span style="color: #800000;">"</span>/>
- <!--记载配置文件-->
- <context:property-placeholder location=<span style="color: #800000;">"</span><span style="color: #800000;">classpath:jdbc.properties</span><span style="color: #800000;">"</span>></context:property-placeholder>
- <!--<span style="color: #000000;">DateSource模板
- DriverManagerDataSource:Spring默认的数据源
- 数据源还有:c3p0 dbcp
- </span>-->
- <bean id=<span style="color: #800000;">"</span><span style="color: #800000;">dataSource</span><span style="color: #800000;">"</span> <span style="color: #0000ff;">class</span>=<span style="color: #800000;">"</span><span style="color: #800000;">org.springframework.jdbc.datasource.DriverManagerDataSource</span><span style="color: #800000;">"</span>>
- <property name=<span style="color: #800000;">"</span><span style="color: #800000;">driverClassName</span><span style="color: #800000;">"</span> value=<span style="color: #800000;">"</span><span style="color: #800000;">${jdbc.driver}</span><span style="color: #800000;">"</span>></property>
- <property name=<span style="color: #800000;">"</span><span style="color: #800000;">url</span><span style="color: #800000;">"</span> value=<span style="color: #800000;">"</span><span style="color: #800000;">${jdbc.url}</span><span style="color: #800000;">"</span>></property>
- <property name=<span style="color: #800000;">"</span><span style="color: #800000;">username</span><span style="color: #800000;">"</span> value=<span style="color: #800000;">"</span><span style="color: #800000;">${jdbc.username}</span><span style="color: #800000;">"</span>></property>
- <property name=<span style="color: #800000;">"</span><span style="color: #800000;">password</span><span style="color: #800000;">"</span> value=<span style="color: #800000;">"</span><span style="color: #800000;">${jdbc.password}</span><span style="color: #800000;">"</span>></property>
- </bean>
- <!--植入JdbcTemplate-->
- <bean id=<span style="color: #800000;">"</span><span style="color: #800000;">jdbcTemplate</span><span style="color: #800000;">"</span> <span style="color: #0000ff;">class</span>=<span style="color: #800000;">"</span><span style="color: #800000;">org.springframework.jdbc.core.JdbcTemplate</span><span style="color: #800000;">"</span>>
- <property name=<span style="color: #800000;">"</span><span style="color: #800000;">dataSource</span><span style="color: #800000;">"</span> <span style="color: #0000ff;">ref</span>=<span style="color: #800000;">"</span><span style="color: #800000;">dataSource</span><span style="color: #800000;">"</span>></property>
- </bean>
- <!--
- <!–植入DAO层–&<span style="color: #000000;">gt;
- </span><bean id=<span style="color: #800000;">"</span><span style="color: #800000;">iStudentdao</span><span style="color: #800000;">"</span> <span style="color: #0000ff;">class</span>=<span style="color: #800000;">"</span><span style="color: #800000;">com.JdbcTemplate.dao.impl.IStudentdaoimpl</span><span style="color: #800000;">"</span>>
- <!–<property name=<span style="color: #800000;">"</span><span style="color: #800000;">jdbcTemplate</span><span style="color: #800000;">"</span> <span style="color: #0000ff;">ref</span>=<span style="color: #800000;">"</span><span style="color: #800000;">jdbcTemplate</span><span style="color: #800000;">"</span>></property>–&<span style="color: #000000;">gt;
- </span><property name=<span style="color: #800000;">"</span><span style="color: #800000;">dataSource</span><span style="color: #800000;">"</span> <span style="color: #0000ff;">ref</span>=<span style="color: #800000;">"</span><span style="color: #800000;">dataSource</span><span style="color: #800000;">"</span>></property>
- </bean>
- <!–植入Service–&<span style="color: #000000;">gt;
- </span><bean id=<span style="color: #800000;">"</span><span style="color: #800000;">iStudentservice</span><span style="color: #800000;">"</span> <span style="color: #0000ff;">class</span>=<span style="color: #800000;">"</span><span style="color: #800000;">com.JdbcTemplate.service.impl.IStudentserviceimpl</span><span style="color: #800000;">"</span>>
- <property name=<span style="color: #800000;">"</span><span style="color: #800000;">iStudentdao</span><span style="color: #800000;">"</span> <span style="color: #0000ff;">ref</span>=<span style="color: #800000;">"</span><span style="color: #800000;">iStudentdao</span><span style="color: #800000;">"</span>></property>
- </bean>
- -->
- </beans>
步骤二:DAOimpl层
- <span style="color: #000000;">@Repository
- </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">class</span><span style="color: #000000;"> IStudentdaoimpl implements IStudentdao {
- @Resource
- </span><span style="color: #0000ff;">private</span><span style="color: #000000;"> JdbcTemplate jdbcTemplate;
- </span><span style="color: #008000;">//</span><span style="color: #008000;">查询</span>
- <span style="color: #000000;"> @Override
- </span><span style="color: #0000ff;">public</span> List<Student><span style="color: #000000;"> allstu() {
- </span><span style="color: #008000;">//</span><span style="color: #008000;">获取JDBC模板</span>
- <span style="color: #008000;">/*</span><span style="color: #008000;">JdbcTemplate jdbcTemplate=getJdbcTemplate();</span><span style="color: #008000;">*/</span><span style="color: #000000;">
- String sql</span>=<span style="color: #800000;">"</span><span style="color: #800000;">select * from student</span><span style="color: #800000;">"</span><span style="color: #000000;">;
- </span><span style="color: #008000;">//</span><span style="color: #008000;">查询</span>
- <span style="color: #008000;">/*</span><span style="color: #008000;">List<Student> query = jdbcTemplate.query(sql, new RowMapper<Student>() {
- </span><span style="color: #008000;">*//*</span><span style="color: #008000;">*
- *
- * @param rs 返回的结果集
- * @param i 记录行
- * @return 方法返回值
- * @throws SQLException
- </span><span style="color: #008000;">*//*</span><span style="color: #008000;">
- @Override
- public Student mapRow(ResultSet rs, int i) throws SQLException {
- Student stu = new Student();
- stu.setStuid(rs.getInt("stuid"));
- stu.setStuname(rs.getString("stuname"));
- stu.setAge(rs.getInt("age"));
- return stu;
- }
- });</span><span style="color: #008000;">*/</span>
- <span style="color: #008000;">//</span><span style="color: #008000;">自动映射</span>
- RowMapper<Student> rowMapper= <span style="color: #0000ff;">new</span> BeanPropertyRowMapper<>(Student.<span style="color: #0000ff;">class</span><span style="color: #000000;">);
- List</span><Student> query =<span style="color: #000000;"> jdbcTemplate.query(sql, rowMapper);
- </span><span style="color: #0000ff;">return</span><span style="color: #000000;"> query;
- }
- }</span>
步骤三:Serviceimpl层
- @Service(<span style="color: #800000;">"</span><span style="color: #800000;">iStudentservice</span><span style="color: #800000;">"</span><span style="color: #000000;">)
- </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">class</span><span style="color: #000000;"> IStudentserviceimpl implements IStudentservice {
- @Resource
- </span><span style="color: #0000ff;">private</span><span style="color: #000000;"> IStudentdao iStudentdao;
- </span><span style="color: #0000ff;">public</span><span style="color: #000000;"> IStudentdao getiStudentdao() {
- </span><span style="color: #0000ff;">return</span><span style="color: #000000;"> iStudentdao;
- }
- </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">void</span><span style="color: #000000;"> setiStudentdao(IStudentdao iStudentdao) {
- </span><span style="color: #0000ff;">this</span>.iStudentdao =<span style="color: #000000;"> iStudentdao;
- }
- @Override
- </span><span style="color: #0000ff;">public</span> List<Student><span style="color: #000000;"> allstu() {
- </span><span style="color: #0000ff;">return</span><span style="color: #000000;"> iStudentdao.allstu();
- }
- }</span>
步骤四:测试
- <span style="color: #000000;">@Test
- </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">void</span><span style="color: #000000;"> Demo01(){
- ApplicationContext atc</span>=<span style="color: #0000ff;">new</span> ClassPathXmlApplicationContext(<span style="color: #800000;">"</span><span style="color: #800000;">applicationContext.xml</span><span style="color: #800000;">"</span><span style="color: #000000;">);
- IStudentservice stu </span>= (IStudentservice)atc.getBean(<span style="color: #800000;">"</span><span style="color: #800000;">iStudentservice</span><span style="color: #800000;">"</span><span style="color: #000000;">);
- </span><span style="color: #008000;">//</span><span style="color: #008000;">查询stu</span>
- List<Student> allstu =<span style="color: #000000;"> stu.allstu();
- </span><span style="color: #0000ff;">for</span><span style="color: #000000;"> (Student atu:allstu){
- System.</span><span style="color: #0000ff;">out</span>.println(<span style="color: #800000;">"</span><span style="color: #800000;">名称:</span><span style="color: #800000;">"</span>+atu.getStuname()+<span style="color: #800000;">"</span><span style="color: #800000;">\t年龄:</span><span style="color: #800000;">"</span>+<span style="color: #000000;">atu.getAge());
- }
- }</span>
JdbcTemplate(增删改查以及以注释实现增删改查)
标签:row lex null out 步骤 ash 修改 美的 date