wordpress主题出错修改主题,抖音seo,wordpress上传视频,查看网站开发文章目录 准备数据pom.xml文件中引用需要的库准备好dao层接口和service层接口和实现类准备好 jdbc.properties 和 user.properties编写Druid的jdbcConfig配置类编写spring的配置类SpringConfig编写Dao层的实现类的逻辑测试类参考文献 准备数据
create database if not exists … 文章目录 准备数据pom.xml文件中引用需要的库准备好dao层接口和service层接口和实现类准备好 jdbc.properties 和 user.properties编写Druid的jdbcConfig配置类编写spring的配置类SpringConfig编写Dao层的实现类的逻辑测试类参考文献 准备数据
create database if not exists db_spring;
use db_spring;
drop table if exists tb_user;
create table if not exists tb_user
(id int primary key auto_increment,name varchar(10) not null unique,age int,id_card varchar(10)
);insert into tb_user(name, age, id_card)values (张三, 23, 10001),(李四, 18, 10002),(王五, 34, 10003),(赵六, 45, 10004);select * from tb_user;pom.xml文件中引用需要的库
dependenciesdependencygroupIdorg.springframework/groupIdartifactIdspring-context/artifactIdversion6.0.12/version/dependencydependencygroupIdcom.alibaba/groupIdartifactIddruid/artifactIdversion1.1.10/version/dependencydependencygroupIdcom.mysql/groupIdartifactIdmysql-connector-j/artifactIdversion8.0.33/version/dependency
/dependencies准备好dao层接口和service层接口和实现类
dao层// 接口
package com.test.dao;public interface UserDao {void selectAll();void selectById();
}service层// 接口
package com.test.service;public interface UserService {void selectAll();void selectById();
}// 实现类
package com.test.service.impl;import com.test.dao.UserDao;
import com.test.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;/*** Service注解就是标识这个类是service层的bean,spring启动的时候就会把它放入到Ioc容器中* 跟这个相似还有 Repository 和 Controller*/
Service
public class UserServiceImpl implements UserService {// Autowired注解是自动装配Autowiredprivate UserDao userDao;Overridepublic void selectAll() {userDao.selectAll();}Overridepublic void selectById() {userDao.selectById();}
}准备好 jdbc.properties 和 user.properties 这里分开写是为了练习加载多个配置文件所以需要再resources资源文件中新建这两个配置文件 jdbc.propertiesjdbc.drivercom.mysql.cj.jdbc.Driver
jdbc.urljdbc:mysql:///db_spring?useServerPrepStmtstrue
jdbc.usernameroot
jdbc.passwordroot1234user.propertiesname张三
age23
sex男
idCard10001
id2编写Druid的jdbcConfig配置类
public class JdbcConfig {/*** 这里通过Value注解从properties配置文件中读取数据* 这里的前提就是在 SpringConfig这个配置类中* 通过PropertySource注解引用的资源文件中的配置文件*/Value(${jdbc.driver})private String driver;Value(${jdbc.url})private String url;Value(${jdbc.username})private String username;Value(${jdbc.password})private String password;/*** 通过 注解Bean来加载第三方*/Beanpublic DataSource dataSource() {DruidDataSource ds new DruidDataSource();ds.setDriverClassName(driver);ds.setUrl(url);ds.setUsername(username);ds.setPassword(password);return ds;}
}编写spring的配置类SpringConfig
package com.test.config;import org.springframework.context.annotation.*;/*** Configuration注解设置当前类为配置类* ComponentScan注解用于扫描指定路径重点bean对象* PropertySource注解用于把指定的配置文件加载借来* Import注解是用于导入三方的bean类进入Ioc容器*/
Configuration
ComponentScan({com.test.dao, com.test.service})
PropertySource({classpath:user.properties, classpath:jdbc.properties})
Import(JdbcConfig.class)
public class SpringConfig {
}编写Dao层的实现类的逻辑
// Repository表示是dao层的bean
Repository(userDao)
public class UserDaoImpl implements UserDao {// 自动装配Autowiredprivate DataSource dataSource;// 获取配置文件中的数据Value(${id})private int id;Overridepublic void selectAll() {try {// 操作数据库Connection connection dataSource.getConnection();String sql select * from tb_user;PreparedStatement prepareStatement connection.prepareStatement(sql);ResultSet resultSet prepareStatement.executeQuery();while (resultSet.next()) {int id resultSet.getInt(id);String name resultSet.getString(name);String idCard resultSet.getString(id_card);int age resultSet.getInt(age);System.out.println(id: id , name: name , age: age , idCard: idCard);}// 释放资源resultSet.close();prepareStatement.close();connection.close();} catch (Exception e) {e.printStackTrace();}}Overridepublic void selectById() {try {Connection connection dataSource.getConnection();String sql select * from tb_user where id ?;PreparedStatement prepareStatement connection.prepareStatement(sql);prepareStatement.setInt(1, id);ResultSet resultSet prepareStatement.executeQuery();while (resultSet.next()) {int id resultSet.getInt(id);String name resultSet.getString(name);String idCard resultSet.getString(id_card);int age resultSet.getInt(age);System.out.println(id: id , name: name , age: age , idCard: idCard);}// 释放资源resultSet.close();prepareStatement.close();connection.close();} catch (Exception e) {e.printStackTrace();}}
}测试类
public class Main {public static void main(String[] args) {/*** 获取Ioc容器* 这里是通过SpringConfig这个配置类来获取*/ApplicationContext ctx new AnnotationConfigApplicationContext(SpringConfig.class);// 获取beanUserService userService ctx.getBean(UserService.class);userService.selectAll();System.out.println( selectById );userService.selectById();}
}参考文献
1. 黑马程序员SSM框架教程