其他Spring相关文章
Spring简述一
Spring简述二
Spring提供了JavaEE的一整套解决方案(展示层 业务层 dao层)
jdbCTemplate是dao层的解决方案,mybatis也是dao层的解决方案
Spring中JDBCTemplate的使用:
创建数据源(实现datasource的接口)
创建JDBCTemplate对象通过数据源来实例化
JDBCTemplate的使用步骤:
1、引入依赖
MySQL驱动包、Spring-jdbc
MySQL的驱动包,spring-jdbc
<!--Spring 的JDBC模板操作-->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>4.2.8.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>4.2.8.RELEASE</version>
</dependency>
<!--mysql驱动包-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.18</version>
</dependency>
2、JDBCTemplate模板编码使用
//数据源
DriverManagerDataSource dataSource = new DriverManagerDataSource();
dataSource.setDriverClassName("com.mysql.jdbc.Driver");
dataSource.setUrl("jdbc:mysql://localhost:3306/test");
dataSource.setUsername("root");
dataSource.setPassword("123456");
//jdbcTemplate对象
JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
//插入操作 jdbcTemplate.update
String sql = "insert into Student(SID,Sname,Sage) values(?,?,?)";
// jdbcTemplate.update(sql,9,"GY1313", 22);
//修改操作 jdbcTemplate.update
String sql1="update Student set Ssex = ? where SID = ?";
// jdbcTemplate.update(sql1, 1, 9);
//删除操作 jdbcTemplate.update
String sql2 = "delete from Student where SID = ?";
// jdbcTemplate.update(sql2, 9);
//查询操作
//查询单个的用户 jdbcTemplate.queryForObject
//需要实现RowMapper接口,作用是完成数据库数据和JAVA对象的映射
String sql4 ="select * from Student where SID = ?";
// Student1 student1 = jdbcTemplate.queryForObject(sql4, new StudentMapper(), 8);
// System.out.println(student1);
//查询表中所有的结果 jdbcTemplate.query
String sql5 = "select * from Student";
List <Student1> student1s = jdbcTemplate.query(sql5, new StudentMapper());
System.out.println(student1s.size());
}
}
/**
* 手动的将数据库结果映射为JAVA的对象
*/
static class StudentMapper implements RowMapper<Student1>{
@Override
/**
* 参数:ResultSet rs, 数据库返回的结果集,注意:表示的是一行数据的结果集
* int rowNum 表示行号
*
* 返回参数:Student1 表示返回的对象的类型
*/
public Student1 mapRow(ResultSet rs, int rowNum) throws SQLException {
//返回的对象
Student1 student1 = new Student1();
//将数据库获取的参数值交给student对象
student1.setSID(rs.getInt("SID"));
student1.setSname(rs.getString("Sname"));
student1.setSsex(rs.getString("Ssex"));
student1.setSage(rs.getString("Sage"));
return student1;
}
}
Spring和mybatis的整合使用
整合思路:就是将mybatis中创建出来的对象交给Spring进行单例管理——sqlSessionfactory
整合步骤:
1、引入依赖
spring核心jar、驱动jar包、mybatis的jar、mybatis-spring包
spring-jdbc \spring-tx
<!--mybatis和spring整合包-->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>1.3.0</version>
</dependency>
2、创建mybatis配置文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//
mybatis.org//DTD Config 3.0//EN"
"
http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<!--数据源 和spring整合后交给spring管理-->
<!--mapper映射 整合放在spring的配置文件中-->
</configuration>
3、创建student表,创建pojo类,创建mapper.xml 创建mapper.Java
4、创建spring的全局配置文件
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="
http://www.springframework.org/schema/beans"
xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance"
xmlns:aop="
http://www.springframework.org/schema/aop"
xmlns:context="
http://www.springframework.org/schema/context"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop.xsd">
<!--配置数据源-->
<bean id="dataSource" class="com.mchange.v2.c3p0.DriverManagerDataSource">
<property name="driverClass" value="com.mysql.jdbc.Driver"/>
<property name="jdbcUrl" value="jdbc:mysql://localhost:3306/test"/>
<property name="user" value="root"/>
<property name="password" value="123456"/>
</bean>
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<!--注入数据源-->
<property name="dataSource" ref="dataSource"/>
<!--注入mybatis的配置xml文件-->
<property name="configLocation" value="classpath:mybatis/spring-mybatis.xml"/>
<!--注入mapper映射-->
<property name="mapperLocations" value="classpath*:mapper/*Mapper.xml"/>
</bean>
<单个创建对象>
<bean id="studentMapper" class="org.mybatis.spring.mapper.MapperFactoryBean">
<!--注入接口-->
<property name="mapperInterface" value="com.tulun.dao7.StudentMapper"/>
<!--z注入会话工厂-->
<property name="sqlSessionFactory" ref="sqlSessionFactory"/>
</bean>
<!--
批量的创建代理对象
-->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.tulun.dao7"/>
<property name="sqlSessionFactory" ref="sqlSessionFactory"/>
</bean>
</beans>
版权声明:本文为weixin_44836685原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。