一.数据库表
/*
Navicat MySQL Data Transfer
Source Server : 本地连接
Source Server Version : 50720
Source Host : localhost:3306
Source Database : ssh_demo
Target Server Type : MYSQL
Target Server Version : 50720
File Encoding : 65001
Date: 2019-10-07 14:19:04
*/
SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for `t_user`
-- ----------------------------
DROP TABLE IF EXISTS `t_user`;
CREATE TABLE `t_user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`address` varchar(255) DEFAULT NULL,
`username` varchar(50) DEFAULT NULL,
`phone` varchar(50) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8;
-- ----------------------------
-- Records of t_user
-- ----------------------------
INSERT INTO `t_user` VALUES ('6', 'GZ', '张三', '13456789487');
INSERT INTO `t_user` VALUES ('7', 'GZ', '张三', '15674635267');
二.使用idea创建一个maven项目,然后创建如下的目录
三.各种配置文件如下
1.web.xml
/index.jsp
contextConfigLocation
classpath:applicationContext.xml
spring
org.springframework.web.servlet.DispatcherServlet
contextConfigLocation
classpath:spring-mvc.xml
1
spring
/
org.springframework.web.context.ContextLoaderListener
encodingFilter
org.springframework.web.filter.CharacterEncodingFilter
encoding
UTF-8
forceEncoding
true
encodingFilter
/*
2.applicationContext.xml
http://www.springframework.org/schema/beans/spring-beans-4.1.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-4.1.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-4.1.xsd">
${hibernate.hbm2ddl.auto}
${hibernate.dialect}
${hibernate.show_sql}
${hibernate.format_sql}
3.config.properties
#database connection config
jdbc.driver = com.mysql.jdbc.Driver
jdbc.url = jdbc:mysql://localhost:3306/ssh_demo?useUnicode=true&characterEncoding=utf-8
jdbc.username = root
jdbc.password = ???
#hibernate config
hibernate.dialect = org.hibernate.dialect.MySQLDialect
hibernate.show_sql = true
hibernate.format_sql = true
hibernate.hbm2ddl.auto = update
4.spring-mvc.xml
http://www.springframework.org/schema/beans/spring-beans-4.1.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-4.1.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-4.1.xsd">
5.UserController.java
packagecom.ssh.controller;importcom.ssh.entity.User;importcom.ssh.service.UserService;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.stereotype.Controller;importorg.springframework.ui.Model;importorg.springframework.web.bind.annotation.RequestMapping;importjava.util.List;
@Controller
@RequestMapping("/user")public classUserController {
@AutowiredprivateUserService userService;
@RequestMapping("/getUsers")publicString findUsers(Model model){
List users =userService.findUsers();
model.addAttribute("users",users);return "user";
}
@RequestMapping("/saveUser")publicString saveUsser(){
User user= newUser();
userService.saveUser(user);return "success";
}
}
6.User.java
packagecom.ssh.entity;import javax.persistence.*;
@Entity
@Table(name= "t_user")public classUser {
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)privateInteger id;
@Column(name= "username")privateString username;
@Column(name= "address")privateString address;
@Column(name= "phone")privateString phone;publicInteger getId() {returnid;
}public voidsetId(Integer id) {this.id =id;
}publicString getAddress() {returnaddress;
}public voidsetAddress(String address) {this.address =address;
}publicString getUsername() {returnusername;
}public voidsetUsername(String username) {this.username =username;
}publicString getPhone() {returnphone;
}public voidsetPhone(String phone) {this.phone =phone;
}
@OverridepublicString toString() {return "Person{" +
"id=" + id +
", address='" + address + '\'' +
'}';
}
}
7.UserDao.java
packagecom.ssh.dao;importcom.ssh.entity.User;importjava.util.List;public interfaceUserDao {
ListfindUsers();intsaveUser(User entity);
}
8.UserDaoImpl.java
packagecom.ssh.dao.impl;importcom.ssh.dao.UserDao;importcom.ssh.entity.User;importorg.hibernate.Session;importorg.hibernate.SessionFactory;importorg.hibernate.query.Query;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.stereotype.Repository;importjava.util.List;
@Repositorypublic class UserDaoImpl implementsUserDao {
@AutowiredprivateSessionFactory sessionFactory;privateSession getCurrentSession() {return this.sessionFactory.openSession();
}
@Overridepublic intsaveUser(User entity) {int id =(Integer) getCurrentSession().save(entity);returnid;
}
@Overridepublic ListfindUsers() {
Query query= getCurrentSession().createQuery("from User");
List list =query.list();returnlist;
}
}
9.UserService.java
packagecom.ssh.service;importcom.ssh.entity.User;importjava.util.List;public interfaceUserService {
ListfindUsers();intsaveUser(User entity);
}
10.UserServiceImpl.java
packagecom.ssh.service.impl;importcom.ssh.dao.UserDao;importcom.ssh.entity.User;importcom.ssh.service.UserService;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.stereotype.Service;importjava.util.List;
@Servicepublic class UserServiceImpl implementsUserService {
@AutowiredprivateUserDao userDao;
@Overridepublic ListfindUsers() {returnuserDao.findUsers();
}
@Overridepublic intsaveUser(User entity) {
entity.setAddress("GZ");
entity.setUsername("张三");
entity.setPhone("15674635267");returnuserDao.saveUser(entity);
}
}
11.success.jsp
Title12.user.jsp
用户信息ID姓名地址电话号码
${obj.id}${obj.username}${obj.address}${obj.phone}四.启动tomcat
表中数据增加了一个用户