软件工程系统开发课堂测试01

这次测试我们尝试的编辑了河北省重大技术需求证据系统,程序需求用户注册,用户登陆,系统主机面,需求征集,浏览需求,需求审核,修改密码等功能,并且需要进行数据库的连接,这些内容大部分在上一学期就有了些许的掌握,但在课堂测试的过程中,我还是只完成了部分功能,我只满足了用户注册,用户登陆,需求征集,修改密码这几个功能,并与数据库正常连接,图形化界面也并没有完成,下面我将展示我的代码。

//Dao.java
package Dao;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

import Entity.User;
import Entity.jishu;
import DB.DB;

public class Dao {
    public String denglu(String username) {
        String sql = "select * from yonghu where ";
        if (username != "") {
            sql += "name like '%" + username + "%'";
        }

        Connection conn = DB.getConn();
        Statement state = null;
        ResultSet rs = null;
        String password2 = null;
        try {
            state = conn.createStatement();
            rs = state.executeQuery(sql);
            while (rs.next()) {

                password2 = rs.getString("password");

            }
        } catch (SQLException e) {
            e.printStackTrace();
        } finally {
            DB.close(rs, state, conn);
        }

        return password2;
    }
    public boolean zhuce(User user) {
        String sql = "insert into yonghu(name, password,tel,danwei) values('" + user.getName() + "','" + user.getPassword()+ "','" + user.getTel()+ "','" + user.getDanwei()
                + "')";
        // 鍒涘缓鏁版嵁搴撻摼鎺�
        Connection conn = DB.getConn();
        Statement state = null;
        boolean f = false;
        int a = 0;

        try {
            state = conn.createStatement();
            a = state.executeUpdate(sql);
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            // 鍏抽棴z 杩炴帴
            DB.close(state, conn);
        }

        if (a > 0) {
            f = true;
        }
        return f;
    }
    public boolean zhengji(jishu js) {
        String sql = "insert into jishu(name, info,val,moshi,touzi) values('" + js.getName() + "','" + js.getInfo()+ "','" + js.getValues()+ "','" + js.getMoshi()+ "','" + js.getTouzi()
                + "')";
        // 鍒涘缓鏁版嵁搴撻摼鎺�
        Connection conn = DB.getConn();
        Statement state = null;
        boolean f = false;
        int a = 0;

        try {
            state = conn.createStatement();
            a = state.executeUpdate(sql);
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            // 鍏抽棴z 杩炴帴
            DB.close(state, conn);
        }

        if (a > 0) {
            f = true;
        }
        return f;
    }

}
//DB.java
package DB;

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

public class DB {
    public static String db_url = "jdbc:mysql://localhost:3306/course";
    public static String db_user = "root";
    public static String db_pass = "z376371066.";
    
    public static Connection getConn () {
        Connection conn = null;
        
        try {
            Class.forName("com.mysql.jdbc.Driver");//鍔犺浇椹卞姩
            conn = DriverManager.getConnection(db_url, db_user, db_pass);
        } catch (Exception e) {
            e.printStackTrace();
        }
        
        return conn;
    }
    
    /**
     * 鍏抽棴杩炴帴
     * @param state
     * @param conn
     */
    public static void close (Statement state, Connection conn) {
        if (state != null) {
            try {
                state.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
        
        if (conn != null) {
            try {
                conn.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }
    
    public static void close (ResultSet rs, Statement state, Connection conn) {
        if (rs != null) {
            try {
                rs.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
        
        if (state != null) {
            try {
                state.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
        
        if (conn != null) {
            try {
                conn.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }

    public static void main(String[] args) throws SQLException {
        Connection conn = getConn();
        PreparedStatement pstmt = null;
        ResultSet rs = null;
        String sql ="select * from USER";
        pstmt = conn.prepareStatement(sql);
        rs = pstmt.executeQuery();
        if(rs.next()){
            System.out.println("绌�");
        }else{
            System.out.println("涓嶇┖");
        }
    }

}
//jishu.java
package Entity;

public class jishu {
    private String name;
    private String info;
    private String values;
    private String moshi;
    private String touzi;
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getInfo() {
        return info;
    }
    public void setInfo(String info) {
        this.info = info;
    }
    public String  getValues() {
        return values;
    }
    public void setValues(String values) {
        this.values = values;
    }
    public String getMoshi() {
        return moshi;
    }
    public void setMoshi(String moshi) {
        this.moshi = moshi;
    }
    public String getTouzi() {
        return touzi;
    }
    public void setTouzi(String touzi) {
        this.touzi = touzi;
    }
    public jishu(String name,String info,String values,String moshi,String touzi) {
        this.name = name;
        this.info = info;
        this.values = values;
        this.moshi = moshi;
        this.touzi = touzi;
    }
}
//User.java
package Entity;

public class User {
    private String name;
    private String password;
    private String tel;
    private String danwei;
    public String getTel() {
        return tel;
    }
    public void setTel(String tel) {
        this.tel = tel;
    }
    public String getDanwei() {
        return danwei;
    }
    public void setDanwei(String danwei) {
        this.danwei = danwei;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getPassword() {
        return password;
    }
    public void setPassword(String password) {
        this.password = password;
    }
    public User(String name,String password) {
        this.name = name;
        this.password = password;
    }
    public User(String name,String password,String tel,String danwei) {
        this.name = name;
        this.password = password;
        this.tel = tel;
        this.danwei = danwei;
    }

}
//Servlt.java
package Servlet;

import java.io.IOException;
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 Dao.Dao;
import Entity.User;
import Entity.jishu;

/**
 * Servlet implementation class Servlet
 */
@WebServlet("/Servlet")
public class Servlet extends HttpServlet {
    private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public Servlet() {
        super();
        // TODO Auto-generated constructor stub
    }
    Dao dao = new Dao();
    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        req.setCharacterEncoding("utf-8");
        String method = req.getParameter("method");
        if ("denglu".equals(method)) {
            denglu(req, resp);
        }  else if ("zhuce".equals(method)) {
            zhuce(req, resp);
        } 
         else if ("zhengji".equals(method)) {
                zhengji(req, resp);
            } 
    }
    /**
     * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
     */
    private void denglu(HttpServletRequest req, HttpServletResponse resp) throws IOException, ServletException {
        // TODO Auto-generated method stub
        req.setCharacterEncoding("utf-8");
        String username = req.getParameter("username");
        String password = req.getParameter("password");
        String rpassword = dao.denglu(username);
        if(password.equals(rpassword)) {
            req.setAttribute("message", "鐧婚檰鎴愬姛锛�");
            req.getRequestDispatcher("index.jsp").forward(req,resp);
        }
        else {
            req.setAttribute("message", "璐﹀彿涓嶅瓨鍦ㄦ垨瀵嗙爜閿欒锛�");
            req.getRequestDispatcher("login.jsp").forward(req,resp);
        }
        
    }
    private void zhuce(HttpServletRequest req, HttpServletResponse resp) throws IOException, ServletException {
        // TODO Auto-generated method stub
        String username = req.getParameter("username");
        String password = req.getParameter("password");
        String tel = req.getParameter("tel");
        String danwei = req.getParameter("danwei");
        
        User user= new User(username,password,tel,danwei);
        if(dao.zhuce(user)) {
            req.setAttribute("message", "娉ㄥ唽鎴愬姛!");
            req.getRequestDispatcher("login.jsp").forward(req, resp);
        }else {
            req.setAttribute("message", "璐﹀彿閲嶅锛岃閲嶆柊杈撳叆!");
            req.getRequestDispatcher("zhuce.jsp").forward(req, resp);
        }
    }
    private void zhengji(HttpServletRequest req, HttpServletResponse resp) throws IOException, ServletException {
        // TODO Auto-generated method stub
        String name = req.getParameter("name");
        String info = req.getParameter("info");
        String[] values = req.getParameterValues("type");
        String moshi = req.getParameter("moshi");
        String touzi = req.getParameter("touzi");
        
        String delStr = "";
        for(int i=0 ;i < values.length ; i ++)
            delStr += values[i] +" ";
        
        jishu js = new jishu(name,info,delStr,moshi,touzi);
        if(dao.zhengji(js)) {
            req.setAttribute("message", "闇�姹傚緛闆嗗~鍐欐垚鍔�!");
            req.getRequestDispatcher("index.jsp").forward(req, resp);
        }else {
            req.setAttribute("message", "闇�姹傚緛闆嗗~鍐欏け璐ワ紒");
            req.getRequestDispatcher("register.jsp").forward(req, resp);
        }
    }

}
//index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
         Object message = request.getAttribute("message");//放置一个字符串,并取出
         if(message!=null && !"".equals(message)){
     
    %>
         <script type="text/javascript">
              alert("<%=request.getAttribute("message")%>");
         </script>
    <%} %>
<h2 align="center">主界面</h2>
    
<p style="text-align:center" ><a href="login.jsp"> <font size="4">返回登陆界面</font></a></p>    
<div align="center">
        
        <div class="a">
            <p style="text-align:center"><a href="register.jsp">1.需求征集</a></p>
        </div>
        <div class="a">
            <p style="text-align:center"><a href="Servlet?method=list">2.浏览需求</a></p>
        </div>
        <div class="a">
            <p style="text-align:center"><a href="">3.需求审核</a></p>
        </div>
        <div class="a">
            <p style="text-align:center"><a href="zhuce.jsp">4.用户注册</a></p>
        </div>
        <div class="a">
            <p style="text-align:center"><a href="change.jsp">5.修改密码</a></p>
        </div>
        
        
    </div>
    
    
</body>
</html>
//login.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
         Object message = request.getAttribute("message");//放置一个字符串,并取出
         if(message!=null && !"".equals(message)){
     
    %>
         <script type="text/javascript">
              alert("<%=request.getAttribute("message")%>");
         </script>
    <%} %>
    <div align="center">
        <h1 style="color: black;">河北省重大技术需求</h1>
        <h1 style="color: black;">征集系统</h1>
        <form action="Servlet?method=denglu" method="post" onsubmit="return check()">
            <div class="a">
                <p style="text-align:center">账号<input type="text" size="20" id="username" name="username"/></p>
            </div>
            <div class="a">
                <p style="text-align:center">密码<input type="password" size="20" id="password" name="password" /></p>
            </div>
            <div class="a">
                <p style="text-align:center">验证码<input type="text" size="20" id="yanzhengma" name="yanzhengma"/></p>
            </div>
            <div class="a">
                <button type="submit" class="b">登&nbsp;&nbsp;&nbsp;陆</button>
            </div>
        </form>
    </div>
    <script type="text/javascript">
        function check() {
            var username = document.getElementById("username");;
            var password = document.getElementById("password");
            //非空
            if(username.value == '') {
                alert('账号不能为空');
                username.focus();
                return false;
            }
            if(password.value == '') {
                alert('密码不能为空');
                password.focus();
                return false;
            }
            
        }
    </script>
    <p style="text-align:center"><a href="zhuce.jsp"><font SIZE="6"  >注册</font></a></p>
</body>
</html>
//zhuce.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
         Object message = request.getAttribute("message");//放置一个字符串,并取出
         if(message!=null && !"".equals(message)){
     
    %>
         <script type="text/javascript">
              alert("<%=request.getAttribute("message")%>");
         </script>
    <%} %>
    <div align="center">
        <h1 style="color: black;">注册界面</h1>
        <a href="login.jsp">返回登陆界面</a>
        <form action="Servlet?method=zhuce" method="post" onsubmit="return check()">
            <div class="a">
                姓名<input type="text" id="username" name="username"/>
            </div>
            <div class="a">
                密码<input type="password" id="password" name="password" />
            </div>
            <div class="a">
                重复密码<input type="password" id="rpassword" name="rpassword" />
            </div>
            <div class="a">
                手机号码<input type="text" id="tel" name="tel"/>
            </div>
            <div class="a">
                所属单位<input type="text" id="danwei" name="danwei"/>
            </div>
            <div class="a">
                <button type="submit" class="b">注&nbsp;&nbsp;&nbsp;册</button>
            </div>
        </form>
    </div>
    <script type="text/javascript">
        function check() {
            var username = document.getElementById("username");;
            var password = document.getElementById("password");
            var rpassword = document.getElementById("rpassword");
            var tel = document.getElementById("tel");
            var danwei = document.getElementById("danwei");
            
            //非空
            if(username.value == '') {
                alert('账号不能为空');
                username.focus();
                return false;
            }
            if(password.value == '') {
                alert('密码不能为空');
                password.focus();
                return false;
            }
            if(rpassword.value == '') {
                alert('确认密码不能为空');
                rpassword.focus();
                return false;
            }
            if(rpassword.value!= password.value) {
                alert('两次密码不一致');
                rpassword.focus();
                return false;
            }
            if(tel.value == '') {
                alert('手机号不能为空');
                tel.focus();
                return false;
            }
            if(tel.length()!=11) {
                alert('手机号码必须为11位');
                tel.focus();
                return false;
            }
            if(danwei.value == '') {
                alert('所属单位不能为空');
                danwei.focus();
                return false;
            }
            
        }
    </script>
</body>
</html>
//register.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<body>
<%
         Object message = request.getAttribute("message");//放置一个字符串,并取出
         if(message!=null && !"".equals(message)){
     
    %>
         <script type="text/javascript">
              alert("<%=request.getAttribute("message")%>");
         </script>
    <%} %>
    <div align="center">
        <h1 style="color: black;">河北省重大技术需求征集表</h1>
        <a href="index.jsp">返回主界面</a>
        <form action="Servlet?method=zhengji" method="post" >
            <div class="a">
                技术需求名称<input type="text" id="name" name="name"/>
            </div>
            <div class="a">
                <textarea name="info" cols="35" rows="7">重大科技需求概述</textarea>
            </div>
            <div class="a">
                研究类型<br /><br /> 
             <label><input name="type" type="checkbox" value="基础研究" />基础研究 </label> 
             <label><input name="type" type="checkbox" value="应用研究" />应用研究 </label> 
             <label><input name="type" type="checkbox" value="试验发展" />试验发展 </label> 
             <label><input name="type" type="checkbox" value="研究发展与成果应用" />研究发展与成果应用 </label> 
             <label><input name="type" type="checkbox" value="技术推广与科技服务" />技术推广与科技服务 </label> 
            
            </div>
            <div class="a">
                <p>技术需求合作模式<input name = "moshi" type = "radio" value="独立开发">独立开发<input name = "moshi" type = "radio" value="技术转让">技术转让<input name = "moshi" type = "radio" value="技术入股">技术入股<input name = "moshi" type = "radio" value="合作开发">合作开发</p>
            </div>
            <div class="a">
                <p>计划总投资<input type="text" size="20" id="touzi" name="touzi"/>万元</p>
            </div>
            <div class="a">
                <button type="submit" class="b">提&nbsp;&nbsp;&nbsp;交</button>
            </div>
        </form>
    </div>
    
</body>
</html>

猜你喜欢

转载自www.cnblogs.com/my---world/p/10465843.html