博客
关于我
MVC案例_用户信息列表展示_hehe.employment.over.17.6
阅读量:387 次
发布时间:2019-03-05

本文共 6733 字,大约阅读时间需要 22 分钟。

文章目录

17.11 MVC案例_用户信息列表展示

17.11.1 需求分析与设计

  • 1.需求: 用户信息的增删改查操作

  • 2.设计:

    • 技术选型:
      • Servlet(控制器)+JSP(显示页面)+MySQL(数据库)+JDBCTempleat(简单的对MySQL进行封装)+Duird(数据库连接池,提高连接性能)+BeanUtilS(封装数据)+tomcat(服务器)
    • 数据库设计
  • 3.开发:

    • 环境搭建:
      • 创建数据库环境 ;
      • 创建项目,导入需要的jar包 ;
      • 编码 。
  • 4.测试

  • 5.部署运维

17.11.2 环境搭建

  • 1.创建数据库环境:
create database day17; -- 创建数据库use day17; 			   -- 使用数据库create table user(   -- 创建表	id int primary key auto_increment,	name varchar(20) not null,	gender varchar(5),	age int,	address varchar(32),	qq	varchar(20),	email varchar(50));
  • 2.创建项目,导入需要的 jar包:
    在这里插入图片描述

17.11.3 列表查询分析

在这里插入图片描述

17.11.4 列表查询_代码

<%--  Created by IntelliJ IDEA.  User: 徐巍巍  Date: 2021/2/13  Time: 10:31  To change this template use File | Settings | File Templates.--%><%@ page contentType="text/html;charset=UTF-8" language="java" %>  
首页
<%@ page contentType="text/html;charset=UTF-8" language="java" %><%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
用户信息管理系统

用户信息列表

编号 姓名 性别 年龄 籍贯 QQ 邮箱 操作
${s.count} ${user.name} ${user.gender} ${user.age} ${user.address} ${user.qq} ${user.email} 修改 删除
添加联系人
package com.xww.domain;public class User {       private int id;    private String name;    private String gender;    private int age;    private String address;    private String qq;    private String email;    public int getId() {           return id;    }    public void setId(int id) {           this.id = id;    }    public String getName() {           return name;    }    public void setName(String name) {           this.name = name;    }    public String getGender() {           return gender;    }    public void setGender(String gender) {           this.gender = gender;    }    public int getAge() {           return age;    }    public void setAge(int age) {           this.age = age;    }    public String getAddress() {           return address;    }    public void setAddress(String address) {           this.address = address;    }    public String getQq() {           return qq;    }    public void setQq(String qq) {           this.qq = qq;    }    public String getEmail() {           return email;    }    public void setEmail(String email) {           this.email = email;    }    @Override    public String toString() {           return "User{" +                "id=" + id +                ", name='" + name + '\'' +                ", gender='" + gender + '\'' +                ", age=" + age +                ", address='" + address + '\'' +                ", qq='" + qq + '\'' +                ", email='" + email + '\'' +                '}';    }}
package com.xww.util;import com.alibaba.druid.pool.DruidDataSourceFactory;import javax.sql.DataSource;import javax.xml.crypto.Data;import java.io.IOException;import java.io.InputStream;import java.sql.Connection;import java.sql.SQLException;import java.util.Properties;/** * JDBC工具类 使用Durid连接池 */public class JDBCUtils {       private static DataSource ds ;    static {           try {               //1.加载配置文件            Properties pro = new Properties();            //使用ClassLoader加载配置文件,获取字节输入流            InputStream is = JDBCUtils.class.getClassLoader().getResourceAsStream("druid.properties");            pro.load(is);            //2.初始化连接池对象            ds = DruidDataSourceFactory.createDataSource(pro);        } catch (IOException e) {               e.printStackTrace();        } catch (Exception e) {               e.printStackTrace();        }    }    /**     * 获取连接池对象     */    public static DataSource getDataSource(){           return ds;    }    /**     * 获取连接Connection对象     */    public static Connection getConnection() throws SQLException {           return  ds.getConnection();    }}
package com.xww.web.servlet;import com.xww.domain.User;import com.xww.service.UserService;import com.xww.service.impl.UserServiceImpl;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.io.IOException;import java.util.List;@WebServlet("/userListServlet")public class UserListServlet extends HttpServlet {       protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {           //1.调用UserService完成查询        UserService service = new UserServiceImpl();        List
users = service.findAll(); //2.将list存入request域 request.setAttribute("users",users); //3.转发到list.jsp request.getRequestDispatcher("/list.jsp").forward(request,response); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doPost(request, response); }}
package com.xww.service;import com.xww.domain.User;import java.util.List;/** * 用户管理的业务接口 */public interface UserService {       /**     * 查询所有用户信息     * @return     */    public List
findAll();}
package com.xww.service.impl;import com.xww.dao.UserDao;import com.xww.dao.impl.UserDaoImpl;import com.xww.domain.User;import com.xww.service.UserService;import java.util.List;public class UserServiceImpl implements UserService{       private UserDao dao = new UserDaoImpl();    @Override    public List
findAll() { //调用Dao完成查询 return dao.findAll(); }}
package com.xww.dao;import com.xww.domain.User;import java.util.List;/** * 用户操作的DAO */public interface UserDao {       public List
findAll();}
package com.xww.dao.impl;import com.xww.dao.UserDao;import com.xww.domain.User;import com.xww.util.JDBCUtils;import org.springframework.jdbc.core.BeanPropertyRowMapper;import org.springframework.jdbc.core.JdbcTemplate;import java.util.List;public class UserDaoImpl implements UserDao{       private JdbcTemplate template = new JdbcTemplate(JDBCUtils.getDataSource());    @Override    public List
findAll() { //使用JDBC操作数据库... //1.定义sql String sql = "select * from user"; List
users = template.query(sql, new BeanPropertyRowMapper
(User.class)); return users; }}

转载地址:http://nugwz.baihongyu.com/

你可能感兴趣的文章
MTTR、MTBF、MTTF的大白话理解
查看>>
mt_rand
查看>>
mysql -存储过程
查看>>
mysql /*! 50100 ... */ 条件编译
查看>>
mudbox卸载/完美解决安装失败/如何彻底卸载清除干净mudbox各种残留注册表和文件的方法...
查看>>
mysql 1264_关于mysql 出现 1264 Out of range value for column 错误的解决办法
查看>>
mysql 1593_Linux高可用(HA)之MySQL主从复制中出现1593错误码的低级错误
查看>>
mysql 5.6 修改端口_mysql5.6.24怎么修改端口号
查看>>
MySQL 8.0 恢复孤立文件每表ibd文件
查看>>
MySQL 8.0开始Group by不再排序
查看>>
mysql ansi nulls_SET ANSI_NULLS ON SET QUOTED_IDENTIFIER ON 什么意思
查看>>
multi swiper bug solution
查看>>
MySQL Binlog 日志监听与 Spring 集成实战
查看>>
MySQL binlog三种模式
查看>>
multi-angle cosine and sines
查看>>
Mysql Can't connect to MySQL server
查看>>
mysql case when 乱码_Mysql CASE WHEN 用法
查看>>
Multicast1
查看>>
mysql client library_MySQL数据库之zabbix3.x安装出现“configure: error: Not found mysqlclient library”的解决办法...
查看>>
MySQL Cluster 7.0.36 发布
查看>>