pom.xml:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>text</groupId>
<artifactId>Spring02_Register</artifactId>
<version>1.0.0</version>
<packaging>jar</packaging>
<properties>
<!--
定义全局变量:变量名为project.spring.version
-->
<project.spring.version>5.0.0.RELEASE</project.spring.version>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${project.spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>${project.spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>${project.spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-expression</artifactId>
<version>${project.spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${project.spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
<version>${project.spring.version}</version>
</dependency>
<!--德鲁伊连接池-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.10</version>
</dependency>
<!--mysql连接驱动-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.38</version>
</dependency>
</dependencies>
<build>
<!--加载资源文件-->
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
<include>**/*.properties</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.xml</include>
<include>**/*.properties</include>
</includes>
</resource>
</resources>
</build>
</project>
db.properties:
jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/spring
jdbc.username=root
jdbc.password=admin
applicationContext.xml:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd">
<context:property-placeholder location="classpath:db.properties" system-properties-mode="NEVER"/>
<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource">
<property name="driverClassName" value="${jdbc.driverClassName}"/>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
</bean>
<!--<bean id="userDao" class="text.register.dao.impl.UserDaoImpl">
<property name="dataSource" ref="dataSource"/>
</bean>
<bean id="userService" class="text.register.service.impl.UserServiceImpl">
<property name="dao" ref="userDao"/>
</bean>
<bean id="userController" class="text.register.controller.UserController">
<property name="service" ref="userService"/>
</bean>-->
<!--IoC注解解析器-->
<context:component-scan base-package="text.register"/>
</beans>
App.java:
package text.register;
import text.register.controller.UserController;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.ApplicationContext;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
/**
* Created by thinkpad on 2019/9/3.
*/
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("classpath:applicatonContext.xml")
public class App {
@Autowired
private ApplicationContext context;
@Test
public void testRegister() throws Exception {
UserController controller = context.getBean(UserController.class);
controller.service();
}
}
bean:
User.java:
package text.register.bean;
/**
* Created by thinkpad on 2019/9/3.
*/
public class User {
private Integer id;
private String username;
private String password;
private String tel;
@Override
public String toString() {
return "User{" +
"id=" + id +
", username='" + username + '\'' +
", password='" + password + '\'' +
", tel='" + tel + '\'' +
'}';
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getTel() {
return tel;
}
public void setTel(String tel) {
this.tel = tel;
}
}
dao:
IUserDao.java(接口):
package text.register.dao;
import text.register.bean.User;
import java.sql.SQLException;
/**
* Created by thinkpad on 2019/9/3.
*/
public interface IUserDao {
void save(User user);
}
UserDaoImpl.java:
package text.register.dao.impl;
import text.register.bean.User;
import text.register.dao.IUserDao;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;
import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
/**
* Created by thinkpad on 2019/9/3.
*/
@Repository
public class UserDaoImpl implements IUserDao {
@Autowired
private DataSource dataSource;
public void setDataSource(DataSource dataSource) {
this.dataSource = dataSource;
}
public void save(User user) {
try {
Connection conn = dataSource.getConnection();
String sql = "insert into user(username,password,tel) values(?,?,?)";
//获取预编译执行语句
PreparedStatement ps = conn.prepareStatement(sql);
ps.setString(1,user.getUsername());
ps.setString(2,user.getPassword());
ps.setString(3,user.getTel());
ps.executeUpdate();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
service:
IUserService.java(接口):
package text.register.service;
import text.register.bean.User;
/**
* Created by thinkpad on 2019/9/3.
*/
public interface IUserService {
void register(User user);
}
UserServiceImpl.java:
package text.register.service.impl;
import text.register.bean.User;
import text.register.dao.IUserDao;
import text.register.service.IUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
* Created by thinkpad on 2019/9/3.
*/
@Service
public class UserServiceImpl implements IUserService {
@Autowired
private IUserDao dao;
public void setDao(IUserDao dao) {
this.dao = dao;
}
public void register(User user) {
dao.save(user);
}
}
controller:
UserController.java:
package text.register.controller;
import text.register.bean.User;
import text.register.service.IUserService;
import text.register.service.impl.UserServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
/**
* Created by thinkpad on 2019/9/3.
*/
@Controller
public class UserController {
@Autowired
private IUserService service;
public void setService(IUserService service) {
this.service = service;
}
public void service(){
//获取请求参数:
String username = "rose";
String password = "123";
String tel = "13811112222";
User user = new User();
user.setUsername(username);
user.setPassword(password);
user.setTel(tel);
//执行操作操作
service.register(user);
}
}