一、Springboot整合使用jdbcTemplete
文件引入
<parent>
<groupId></groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.</version>
</parent>
<dependencies>
<dependency>
<groupId></groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency>
<groupId></groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId></groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
2.配置(我的数据库没密码,你的加上就行)
=jdbc:mysql://localhost:3306/test
=root
#=
-class-name=
3.编写一个service接口和实现类
public interface UserService {
public void insertJdbcUser();
}
@Service
public class UserServiceImpl implements UserService{
@Autowired
private JdbcTemplate jdbcTemplate;
@Override
public void insertJdbcUser() {
("insert into user values(null,?,?);","lisi",19);
}
}
4.编写一个controller及启动类
@RestController
public class IndexController {
@Autowired
private UserService userService;
@RequestMapping("/index")
public String index(){
();
return "success";
}
}
@ComponentScan(basePackages = { "", "" })
@EnableAutoConfiguration
public class SpringBootApplication {
public static void main(String[] args){
(,args);
}
}
二、Springboot整合使用mybatis
文件引入
<parent>
<groupId></groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.</version>
</parent>
<dependencies>
<!-- SpringBoot 核心组件 -->
<dependency>
<groupId></groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId></groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</dependency>
<dependency>
<groupId></groupId>
<artifactId>tomcat-embed-jasper</artifactId>
</dependency>
<dependency>
<groupId></groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.1.1</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
</dependencies>
2.配置(我的数据库没密码,你的加上就行)
=jdbc:mysql://localhost:3306/test
=root
#=
-class-name=
3.编写实体类及对应的Mapper代码
public class User {
private Integer id;
private String name;
private Integer age;
public Integer getId() {
return id;
}
public void setId(Integer id) {
= id;
}
public String getName() {
return name;
}
public void setName(String name) {
= name;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
= age;
}
}
public interface UserMapper
{
@Select("select * from user where name =#{name}")
User getName(@Param("name")String name);
}
4.编写Controller及启动类
@Controller
public class Indexcontroller {
@Autowired
private UserMapper userMapper;
@RequestMapping("/index")
public String index(){
return "index";
}
@ResponseBody
@RequestMapping("/getName")
public User getName(String name){
return (name);
}
}
@ComponentScan(basePackages = { ""})
@MapperScan(basePackages = {""})
@EnableAutoConfiguration
public class SpringBootApplication {
public static void main(String[] args){
(,args);
}
}
三、Springboot整合使用jpa
文件引入
<parent>
<groupId></groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.</version>
</parent>
<dependencies>
<dependency>
<groupId></groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency>
<groupId></groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
2.配置(我的数据库没密码,你的加上就行)
=jdbc:mysql://localhost:3306/test
=root
#=
-class-name=
3.创建实体类和Dao
@Entity(name = "user")
public class User {
@Id
@GeneratedValue
private Integer id;
@Column
private String name;
@Column
private Integer age;
public Integer getId() {
return id;
}
public void setId(Integer id) {
= id;
}
public String getName() {
return name;
}
public void setName(String name) {
= name;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
= age;
}
@Override
public String toString() {
return "User{" +
", name='" + name + '\'' +
", age=" + age +
'}';
}
}
public interface UserRepository extends JpaRepository<User,Integer> {
}
4.编写Controller及启动类
@RestController
public class IndexController {
@Autowired
private UserRepository userRepository;
@RequestMapping("/index")
public String index(Integer id){
User u= (id);
return ();
}
}
@ComponentScan(basePackages = { "" })
@EnableJpaRepositories(basePackages = {""})
@EntityScan(basePackages = {""})
@EnableAutoConfiguration
public class SpringbootApp {
public static void main(String[] args) {
(,args);
}
}
四、Springboot整合多数据源
文件
<parent>
<groupId></groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.</version>
</parent>
<dependencies>
<!-- SpringBoot 核心组件 -->
<dependency>
<groupId></groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId></groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</dependency>
<dependency>
<groupId></groupId>
<artifactId>tomcat-embed-jasper</artifactId>
</dependency>
<dependency>
<groupId></groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.1.1</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
</dependencies>
. =
. = jdbc:mysql://localhost:3306/test01?useUnicode=true&characterEncoding=utf-8
. = root
#. = root
. =
. = jdbc:mysql://localhost:3306/test02?useUnicode=true&characterEncoding=utf-8
. = root
#. = root
3.新增两个数据源类
@Configuration// 注入到springboot容器中
@MapperScan(basePackages = ".test01", sqlSessionFactoryRef = "test1SqlSessionFactory")
public class Datasource1 {
@Bean(name = "test1DataSource")
@ConfigurationProperties(prefix = ".test1")
@Primary
public DataSource testDataSource() {
return ().build();
}
@Bean(name = "test1SqlSessionFactory")
@Primary
public SqlSessionFactory testSqlSessionFactory(@Qualifier("test1DataSource") DataSource dataSource)
throws Exception {
SqlSessionFactoryBean bean = new SqlSessionFactoryBean();
(dataSource);
// (
// new
// PathMatchingResourcePatternResolver().getResources("classpath:mybatis/mapper/test1/*.xml"));
return ();
}
@Bean(name = "test1TransactionManager")
@Primary
public DataSourceTransactionManager testTransactionManager(@Qualifier("test1DataSource") DataSource dataSource) {
return new DataSourceTransactionManager(dataSource);
}
@Bean(name = "test1SqlSessionTemplate")
public SqlSessionTemplate testSqlSessionTemplate(
@Qualifier("test1SqlSessionFactory") SqlSessionFactory sqlSessionFactory) throws Exception {
return new SqlSessionTemplate(sqlSessionFactory);
}
}
@Configuration
@MapperScan(basePackages=".test02",sqlSessionFactoryRef="test2SqlSessionFactory")
public class Datasource2 {
@Bean(name = "test2DataSource")
@ConfigurationProperties(prefix = ".test2")
public DataSource testDataSource() {
return ().build();
}
@Bean(name = "test2SqlSessionFactory")
public SqlSessionFactory testSqlSessionFactory(@Qualifier("test2DataSource") DataSource dataSource)
throws Exception {
SqlSessionFactoryBean bean = new SqlSessionFactoryBean();
(dataSource);
// (
// new PathMatchingResourcePatternResolver().getResources("classpath:mybatis/mapper/test2/*.xml"));
return ();
}
@Bean(name = "test2TransactionManager")
public DataSourceTransactionManager testTransactionManager(@Qualifier("test2DataSource") DataSource dataSource) {
return new DataSourceTransactionManager(dataSource);
}
@Bean(name = "test2SqlSessionTemplate")
public SqlSessionTemplate testSqlSessionTemplate(
@Qualifier("test2SqlSessionFactory") SqlSessionFactory sqlSessionFactory) throws Exception {
return new SqlSessionTemplate(sqlSessionFactory);
}
}
4.分包创建实体类、Mapper和service
public class User {
private Integer id;
private String name;
private Integer age;
public Integer getId() {
return id;
}
public void setId(Integer id) {
= id;
}
public String getName() {
return name;
}
public void setName(String name) {
= name;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
= age;
}
}
@CacheConfig(cacheNames = "baseCache")
public interface User1Mapper {
@Insert("insert into user values(null,#{name},#{age});")
public int addUser(@Param("name") String name, @Param("age") Integer age);
}
@Service
public class User01Service {
@Autowired
private User1Mapper user1Mapper;
public int addUser(String name, Integer age) {
return (name, age);
}
}
5.同第四步创建另一个包,注意相应的1改为2
6.写Controller类和启动类
@RestController
public class Indexcontroller {
@Autowired
private User1Mapper user1Mapper;
@Autowired
private User2Mapper user2Mapper;
@RequestMapping("/add")
public String add() {
("Tung", 22);
("Clare", 22);
return "成功!";
}
}
@ComponentScan(basePackages = { "","",".test01",".test02"})
@EnableAutoConfiguration
public class SpringBootApplication {
public static void main(String[] args){
(,args);
}
}
源代码见GitHub:/tangqiangDong/Springboot点击打开链接