zoukankan      html  css  js  c++  java
  • 软件工程概论之课堂测试一

    程序设计思想:

    首先有了以前登录注册的框架,其思想是一致的。所以在jsp中加入相关判断,修改界面即可。

    源程序:

    package com.jaovo.msg.dao;

    import java.sql.Connection;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.util.ArrayList;
    import java.util.List;


    import com.jaovo.msg.Util.DBUtil;
    import com.jaovo.msg.Util.UserException;
    import com.jaovo.msg.model.User;

    //import sun.net.www.content.text.plain;

    public class UserDaoImpl implements IUserDao {

    @Override
    public void add(User user) {
    //鑾峰緱閾炬帴瀵硅薄
    Connection connection = DBUtil.getConnection();
    //鍑嗗�sql璇�彞
    String sql = "select count(*) from t_user where username = ?";
    //鍒涘缓璇�彞浼犺緭瀵硅薄
    PreparedStatement preparedStatement = null;
    ResultSet resultSet = null;
    try {
    preparedStatement = connection.prepareStatement(sql);
    preparedStatement.setString(1, user.getUsername());
    //鎺ユ敹缁撴灉闆?
    resultSet = preparedStatement.executeQuery();
    //閬嶅巻缁撴灉闆?
    while(resultSet.next()) {
    if (resultSet.getInt(1) > 0) {
    throw new UserException("鐢ㄦ埛宸插瓨鍦?") ;
    }
    }

    sql = "insert into t_user(username,password,nickname) value (?,?,?)";
    preparedStatement = connection.prepareStatement(sql);
    preparedStatement.setString(1, user.getUsername());
    preparedStatement.setString(2, user.getPassword());
    preparedStatement.setString(3, user.getNickname());
    preparedStatement.executeUpdate();
    } catch (SQLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }finally {
    //鍏抽棴璧勬簮
    DBUtil.close(resultSet);
    DBUtil.close(preparedStatement);
    DBUtil.close(connection);
    }

    }

    @Override
    public void delete(int id) {
    Connection connection = DBUtil.getConnection();
    String sql = "delete from t_user where id = ?";
    PreparedStatement preparedStatement = null;

    try {
    preparedStatement = connection.prepareStatement(sql);
    preparedStatement.setInt(1, id);
    preparedStatement.executeUpdate();
    } catch (SQLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }finally {
    DBUtil.close(preparedStatement);
    DBUtil.close(connection);
    }

    }

    @Override
    public void update(User user) {
    Connection connection = DBUtil.getConnection();
    //鍑嗗�sql璇�彞
    String sql = "update t_user set password = ? , nickname=? where id = ?";
    //鍒涘缓璇�彞浼犺緭瀵硅薄
    PreparedStatement preparedStatement = null;
    try {
    preparedStatement = connection.prepareStatement(sql);
    preparedStatement.setString(1, user.getPassword());
    preparedStatement.setString(2, user.getNickname());
    preparedStatement.setInt(3, user.getId());
    preparedStatement.executeUpdate();
    } catch (SQLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }finally {
    DBUtil.close(preparedStatement);
    DBUtil.close(connection);
    }
    }

    @Override
    public User load(int id) {
    Connection connection = DBUtil.getConnection();
    //鍑嗗�sql璇�彞
    String sql = "select * from t_user where id = ?";
    //鍒涘缓璇�彞浼犺緭瀵硅薄
    PreparedStatement preparedStatement = null;
    ResultSet resultSet = null;
    User user = null;
    try {
    preparedStatement = connection.prepareStatement(sql);
    preparedStatement.setInt(1, id);
    resultSet = preparedStatement.executeQuery();
    while(resultSet.next()) {
    user = new User();
    user.setId(id);
    user.setUsername(resultSet.getString("username"));
    user.setPassword(resultSet.getString("password"));
    user.setNickname(resultSet.getString("nickname"));
    }
    } catch (SQLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }finally {
    DBUtil.close(resultSet);
    DBUtil.close(preparedStatement);
    DBUtil.close(connection);
    }
    return user;
    }

    @Override
    public User load(String username) {
    // TODO Auto-generated method stub
    return null;
    }

    @Override
    public List<User> load() {
    Connection connection = DBUtil.getConnection();
    //鍑嗗�sql璇�彞
    String sql = "select * from t_user ";
    //鍒涘缓璇�彞浼犺緭瀵硅薄
    PreparedStatement preparedStatement = null;
    ResultSet resultSet = null;
    //闆嗗悎涓�彧鑳芥斁鍏�ser瀵硅薄
    List<User> users = new ArrayList<User>();
    User user = null;
    try {
    preparedStatement = connection.prepareStatement(sql);
    resultSet = preparedStatement.executeQuery();
    while(resultSet.next()) {
    user = new User();
    user.setId(resultSet.getInt("id"));
    user.setUsername(resultSet.getString("username"));
    user.setPassword(resultSet.getString("password"));
    user.setNickname(resultSet.getString("nickname"));
    users.add(user);
    }
    } catch (SQLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }finally {
    DBUtil.close(resultSet);
    DBUtil.close(preparedStatement);
    DBUtil.close(connection);
    }
    return users;
    }

    }

    package com.jaovo.msg.Util;

    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;

    public class DBUtil {

    public static Connection getConnection() {
    try {
    //1 鍔犺浇椹卞姩
    Class.forName("com.mysql.jdbc.Driver").newInstance();
    } catch (InstantiationException | IllegalAccessException | ClassNotFoundException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    String user = "root";
    String password = "a13293581799";
    String url = "jdbc:mysql://localhost:3306/jaovo_msg";
    Connection connection = null;
    try {
    //2 鍒涘缓閾炬帴瀵硅薄connection
    connection = DriverManager.getConnection(url,user,password);
    } catch (SQLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    return connection;
    }

    //鍏抽棴璧勬簮鐨勬柟娉?
    public static void close(Connection connection ) {
    try {
    if (connection != null) {
    connection.close();
    }

    } catch (SQLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    }
    public static void close(PreparedStatement preparedStatement ) {
    try {
    if (preparedStatement != null) {
    preparedStatement.close();
    }

    } catch (SQLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    }
    public static void close(ResultSet resultSet ) {
    try {
    if (resultSet != null) {
    resultSet.close();
    }

    } catch (SQLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    }

    }

    结果截图:

    ---恢复内容结束---

  • 相关阅读:
    主页面
    EasyUI写的登录界面
    SpringMVC学习笔记二第一个小的程序
    springmvc学习笔记一框架的理解
    mybitis学习笔记
    cheng gong de daima
    JQuery中如何使用事件来出发Ajax
    按照用户名和角色查询用户liferay
    在liferay中如何使用Ajax的请求
    [奇葩说]
  • 原文地址:https://www.cnblogs.com/-2016/p/7911798.html
Copyright © 2011-2022 走看看