昆明理工大学 javaee第二次实验报告

昆明理工大学信息工程与自动化学院学生实验报告

20## 2014   学年  学期

课程名称:JAVA EE技术    开课实验室:信自楼444   20## 年  12 月 1  日

一、实验目的

1、掌握Servlet的请求和响应的编程

2、掌握Servlet与JSP的差异

3、掌握Servlet与JSP的数据交互

4、完成用户管理功能

二.实验内容

完成用户的增加、删除、修改、列表功能,要求页面展示的部分需要用JSP完成,业务逻辑由Servlet完成。

三、步骤及具体实施

(一)、视图:

      1.用户登录页面:

2.用户管理页面:

3.增加用户:

4.修改:

(二)javaeebean

1.创建数据库表格:

/****** Script for SelectTopNRows command from SSMS  ******/

SELECT TOP 1000 [id]

      ,[name]

      ,[password]

      ,[sex]

      ,[age]

  FROM [SQLdata].[dbo].[student]

  order by id

2.用javaee.bean封装用户信息:

package javaee.bean;

/**

 * @author help

 *封装一条信息的所有属性

 */

<%@ page language="java" import="java.util.*"

public class javabean {

   private int id;

   private String name;

   private String password;

   private String sex;

   private int age;

   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 getPassword() {

      return password;

   }

   public void setPassword(String password) {

      this.password = password;

   }

   public String getSex() {

      return sex;

   }

   public void setSex(String sex) {

      this.sex = sex;

   }

   public int getAge() {

      return age;

   }

   public void setAge(int age) {

      this.age = age;

   }

}

3.用javaee.bean封装用户信息:

   package javaee.bean;

 package javaee.bean;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.util.ArrayList;

import java.util.List;

/**

 * @author help 操作数据库的方法

 */

public class SqlBean {

   Connection con;

   PreparedStatement pre;

   ResultSet rs;

   public SqlBean() {

      if (rs != null)

        ;

      {

        try {

           Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

        } catch (ClassNotFoundException e) {

           e.printStackTrace();

        }

        try {

           con = DriverManager.getConnection(

                 "jdbc:sqlserver://localhost:1433;DatabaseName=SQLdata",

                 "sa", "123581321");

         } catch (SQLException e) {

           e.printStackTrace();

        }

      }

   }

   /**

    * @author help

    *

    *         插入新的一条记录

    * @return

    */

   public int getinsertuser(String sql, javabean jBean) {

      int count = 0;

      try {

        pre = con.prepareStatement(sql);

        pre.setInt(1, jBean.getId());

        pre.setString(2, jBean.getName());

        pre.setString(3, jBean.getPassword());

        pre.setString(4, jBean.getSex());

        pre.setInt(5, jBean.getAge());

        count = pre.executeUpdate();

      } catch (SQLException e) {

        e.printStackTrace();

      } finally {

        try {

           pre.close();

           con.close();

        } catch (SQLException e) {

           // TODO Auto-generated catch block

           e.printStackTrace();

        }

      }

      return count;

   }

   /**

    * @author help

    *

    *         删除一条记录

    * @return

    */

   public int getdeleteuser(String sql, int id) {

      int count = 0;

      try {

        pre = con.prepareStatement(sql);

        pre.setInt(1, id);

        count = pre.executeUpdate();

      } catch (SQLException e) {

        e.printStackTrace();

      } finally {

        try {

           pre.close();

           con.close();

        } catch (SQLException e) {

           // TODO Auto-generated catch block

           e.printStackTrace();

        }

      }

      return count;

   }

   /**

    * @author help

    *

    *         根据ID查询某一条记录

    * @return

    */

   public javabean getsearchById(String sql, int id) {

      javabean jBean = new javabean();

      try {

        pre = con.prepareStatement(sql);

        pre.setInt(1, id);

        rs = pre.executeQuery();

        while (rs.next()) {

           jBean.setId(rs.getInt("id"));

           jBean.setName(rs.getString("name"));

           jBean.setPassword(rs.getString("password"));

           jBean.setSex(rs.getString("sex"));

           jBean.setAge(rs.getInt("age"));

        }

      } catch (SQLException e) {

        e.printStackTrace();

      }

      return jBean;

   }

   /**

    * @author help

    *

    *         更新某一条记录

    * @return

    */

   public int getupdateuser(String sql, javabean jBean) {

      int count = 0;

      try {

        pre = con.prepareStatement(sql);

        pre.setInt(5, jBean.getId());

        pre.setString(1, jBean.getName());

        pre.setString(2, jBean.getPassword());

        pre.setString(3, jBean.getSex());

        pre.setInt(4, jBean.getAge());

        count = pre.executeUpdate();

      } catch (SQLException e) {

        // TODO Auto-generated catch block

        e.printStackTrace();

      } finally {

        try {

           pre.close();

           con.close();

        } catch (SQLException e) {

           // TODO Auto-generated catch block

           e.printStackTrace();

        }

      }

      return count;

   }

   /**

    * @author help

    *

    *         显示所有记录

    * @return

    */

   public List<javabean> getuserlist(String sql) {

      List<javabean> list = new ArrayList<javabean>();

      // 获取prepareStatement对象

      try {

        pre = con.prepareStatement(sql);

        rs = pre.executeQuery();

        while (rs.next()) {

           javabean jBean = new javabean();

           jBean.setId(rs.getInt("id"));

           jBean.setName(rs.getString("name"));

           jBean.setPassword(rs.getString("password"));

           jBean.setSex(rs.getString("sex"));

           jBean.setAge(rs.getInt("age"));

           list.add(jBean);

        }

      } catch (SQLException e) {

        // TODO Auto-generated catch block

        e.printStackTrace();

      } finally {

        try {

           pre.close();

           con.close();

        } catch (SQLException e) {

           // TODO Auto-generated catch block

           e.printStackTrace();

        }

      }

      return list;

   }

}(三)servlet

1.  验证码的生成

package javaee;import java.io.IOException;

import java.awt.*;

import java.awt.image.*;

import java.util.*;

import javax.servlet.ServletConfig;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import com.sun.image.codec.jpeg.JPEGCodec;

import com.sun.image.codec.jpeg.JPEGImageEncoder;

//生成验证码

@SuppressWarnings("restriction")

public class CheckCodeGet extends HttpServlet

{

private static final long serialVersionUID = 1L;

private final int TYPE_NUMBER = 0;

private final int TYPE_LETTER = 1;

private final int TYPE_MULTIPLE = 2;

private int width;

private int height;

private int count;

@SuppressWarnings("unused")

private int type;

private String  validate_code;

private Random random;

private Font font;

private int line;

public void doGet(HttpServletRequest request, HttpServletResponse response)

   throws ServletException, IOException

{

response.setHeader("Pragma","No-cache");

response.setHeader("Cache-Control","no-cache");

response.setDateHeader("Expires", 0);

response.setContentType("image/jpeg");

String reqCount = request.getParameter("count");

String reqWidth = request.getParameter("width");

String reqHeight = request.getParameter("height");

String reqType = request.getParameter("type");

if(reqCount!=null && reqCount!="")this.count = Integer.parseInt(reqCount);

if(reqWidth!=null && reqWidth!="")this.width = Integer.parseInt(reqWidth);

if(reqHeight!=null && reqHeight!="")this.height = Integer.parseInt(reqHeight);

if(reqType!=null && reqType!="")this.type = Integer.parseInt(reqType);

font = new Font("Courier New",Font.BOLD,width/count);

BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);

Graphics g = image.getGraphics();

g.setColor(getRandColor(200,250));

g.fillRect(0, 0, width, height);

g.setColor(getRandColor(160,200));

for (int i=0;i<line;i++)

{

int x = random.nextInt(width);

int y = random.nextInt(height);

int xl = random.nextInt(12);

int yl = random.nextInt(12);

g.drawLine(x,y,x+xl,y+yl);

}

g.setFont(font);

validate_code = getValidateCode(count,1);

request.getSession().setAttribute("validate_code",validate_code);

for (int i=0;i<count;i++)

{

//调用函数出来的颜色相同,可能是因为种子太接近,所以只能直接生成

g.setColor(new Color(20+random.nextInt(110),20+random.nextInt(110),20+random.nextInt(110)));

int x = (int)(width/count)*i;

int y = (int)((height+font.getSize())/2)-5;

g.drawString(String.valueOf(validate_code.charAt(i)),x,y);

}

g.dispose();

//ImageIO.write(image, "JPEG", response.getOutputStream());

JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(response.getOutputStream());

encoder.encode(image);

}

public void doPost(HttpServletRequest request, HttpServletResponse response)

   throws ServletException, IOException

{

doGet(request,response);

}

public void init(ServletConfig config) throws ServletException

{

super.init(config);

width = 150;

height = 50;

count = 4;

type = TYPE_NUMBER;

random = new Random();

line = 200;

}

//

private Color getRandColor(int from,int to)

{

Random random = new Random();

if(to>255) from=255;

if(to>255) to=255;

int rang = Math.abs(to - from);

int r=from+random.nextInt(rang);

int g=from+random.nextInt(rang);

int b=from+random.nextInt(rang);

return new Color(r,g,b);

}

//取得验证码字符串

private String getValidateCode(int size,int type)

{

StringBuffer validate_code = new StringBuffer();

for(int i = 0; i < size; i++)

{

validate_code.append(getOneChar(type));

}

return validate_code.toString();

}

//根据验证码类型取得实际验证字符

private String getOneChar(int type)

{

String result = null;

switch(type)

{

case TYPE_NUMBER:

result = String.valueOf(random.nextInt(10));

break;

case TYPE_LETTER:

result = String.valueOf((char)(random.nextInt(26)+65));

break;

case TYPE_MULTIPLE:

if(random.nextBoolean())

{

result = String.valueOf(random.nextInt(10));

}

else

{

result = String.valueOf((char)(random.nextInt(26)+65));

}

break;

default:

result=null;

break;

}

if(result==null)

{

throw new NullPointerException("获取验证码出错");

}

return result;

}

}

2.  删除用户

deleteuser.java

package javaee;

import java.io.IOException;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import javaee.bean.SqlBean;

public class deleteuser extends HttpServlet {

   private static final long serialVersionUID = 1L;

  

   public void doGet(HttpServletRequest request, HttpServletResponse response)

         throws ServletException, IOException {

      response.setContentType("text/html");

      doPost(request,response);

   }

   public void doPost(HttpServletRequest request, HttpServletResponse response)

         throws ServletException, IOException {

      response.setContentType("text/html");

      //获取超链接传来的数据

      String sId = request.getParameter("id");

      int      id  =Integer.parseInt(sId);

      System.out.println(id);

      //调用模型层删除方法

      String sql = "delete from student where id=?";

      SqlBean  sBean = new SqlBean();

      int count =sBean.getdeleteuser(sql, id);

      String url="";

      //System.out.println(count);

      if(count>0)

      {

         url="userlist.jsp";

      }

      else

      {

         url ="error.jsp";

         request.setAttribute("error", "删除");

      }

      //转发

      request.getRequestDispatcher(url).forward(request, response);

   }

}

3.  增加用户

package javaee;

import java.io.IOException;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import javaee.bean.SqlBean;

import javaee.bean.javabean;

public class insertuser extends HttpServlet {

   private static final long serialVersionUID = 1L;

   public void doGet(HttpServletRequest request, HttpServletResponse response)

         throws ServletException, IOException {

      response.setContentType("text/html");

         doPost(request,response);

   }

   public void doPost(HttpServletRequest request, HttpServletResponse response)

         throws ServletException, IOException {

      response.setContentType("text/html");

      request.setCharacterEncoding("utf-8");

      response.setCharacterEncoding("utf-8");

      //获取前台页面数据

      String sid = request.getParameter("id");

      String name =request.getParameter("name");

      String password =request.getParameter("password");

      String sex =request.getParameter("sex");

      String sage = request.getParameter("age");

      int      age  =Integer.parseInt(sage);

      int id =Integer.parseInt(sid);

     

      //封装到JavaBean对象中去

      javabean jBean = new javabean();

      jBean.setId(id);

      jBean.setName(name);

      jBean.setPassword(password);

      jBean.setSex(sex);

      jBean.setAge(age);

      //调用模型层

      String sql = "insert into student(id,name,password,sex,age) values(?,?,?,?,?)";

      SqlBean  sBean = new SqlBean();

      int count =sBean.getinsertuser(sql,jBean);

      @SuppressWarnings("unused")

      String url="";

      if(count>0)

      {

         url="userlist.jsp";

      }

      else

      {

         url ="error.jsp";

         request.setAttribute("error", "");

      }

      //转发

      request.getRequestDispatcher("userlist.jsp").forward(request, response);

   }

}

4、用户登录

LoginActionsql.java

package javaee;

import java.io.IOException;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import javax.servlet.ServletConfig;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import javax.servlet.http.HttpSession;

@SuppressWarnings("serial")

publicclass LoginActionsql extends HttpServlet {

   /**

    * Constructor of the object.

    */

   String driverName = null;

   String url = null;

   String user = null;

   String pass = null;

   public LoginActionsql() {

      super();

   }

   /**

    * Destruction of the servlet. <br>

    */

   publicvoid destroy() {

      super.destroy(); // Just puts "destroy" string in log

      // Put your code here

   }

   publicvoid doGet(HttpServletRequest request, HttpServletResponse response)

         throws ServletException, IOException {

      doPost(request, response);

   }

   publicvoid doPost(HttpServletRequest request, HttpServletResponse response)

         throws ServletException, IOException {

      String name = request.getParameter("name");

      String password = request.getParameter("password");

      String checkCode = request.getParameter("checkcode");

      request.setCharacterEncoding("ISO-8859-1");

      name = new String(name.getBytes("ISO-8859-1"), "GBK");

      System.out.println("name=" + name);

      System.out.println("password=" + password);

      if (name != null && name.trim().length() != 0

            && password.trim().length() != 0) {

         String sql = "select * from student where name=? and password=?";

         Connection cn = null;

         boolean check = false;

         try {

            Class.forName(driverName);

            cn = DriverManager.getConnection(url, user, pass);

            PreparedStatement ps = cn.prepareStatement(sql);

            ps.setString(1, name);

            ps.setString(2, password);

            ResultSet rs = ps.executeQuery();

            if (rs.next()) {

                System.out.println(name + password + checkCode);

                check = true;

            }

            rs.close();

            ps.close();

         } catch (Exception e) {

            response.sendRedirect("login.jsp");

            return;

         } finally {

            try {

                cn.close();

            } catch (Exception e) {

            }

         }

         if (check) {

            HttpSession session = request.getSession(true);

            session.setAttribute("name", name);

            session.setAttribute("password", password);

            response.sendRedirect("userlist.jsp");

            System.out.println(name);

            return;

         } else {

            response.sendRedirect("login.jsp");

            return;

         }

      }

   }

   publicvoid init(ServletConfig config) throws ServletException {

      // Put your code here

      super.init(config);

      driverName = config.getInitParameter("driverName");

      url = config.getInitParameter("url");

      user = config.getInitParameter("user");

      pass = config.getInitParameter("pass");

   }

}

5、用户查询

searchById.java

package javaee;

import java.io.IOException;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import javaee.bean.javabean;

import javaee.bean.SqlBean;

public class searchById extends HttpServlet {

private static final long serialVersionUID = 1L;

public void doGet(HttpServletRequest request, HttpServletResponse response)

       throws ServletException, IOException {

    doPost(request,response);

}

public void doPost(HttpServletRequest request, HttpServletResponse response)

       throws ServletException, IOException {

    response.setContentType("text/html");

    request.setCharacterEncoding("utf-8");

    response.setCharacterEncoding("utf-8");

   

    //获取用户ID

    String sid = request.getParameter("id");

    int  id  =Integer.parseInt(sid);

    //System.out.println(id);

    String sql ="select * from student where id=?";

    SqlBean  sBean = new SqlBean();

    javabean jBean = sBean.getsearchById(sql, id);

   

    //用户ID

    request.setAttribute("id",jBean.getId());

    //用户姓名

    request.setAttribute("name",jBean.getName());

    //用户密码

    request.setAttribute("password",jBean.getPassword());

   

    //用户性别

    String sex="";

    String man="";

    String woman="";

    if(jBean.getSex()!=null)

    {

       sex=jBean.getSex().trim();

       if(sex.equals("男"))

       {

          man ="checked";

       }

       else

       {

          woman ="checked";

       }

    }

    request.setAttribute("man",man);

    request.setAttribute("woman",woman);

    //用户年龄

    request.setAttribute("age",jBean.getAge());

    //转发

    request.getRequestDispatcher("updateuser.jsp").forward(request, response);

}

}

6、用户修改

updateuser.java

package javaee;

import java.io.IOException;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import javaee.bean.javabean;

import javaee.bean.SqlBean;

public class updateuser extends HttpServlet {

private static final long serialVersionUID = 1L;

public void doGet(HttpServletRequest request, HttpServletResponse response)

       throws ServletException, IOException {

    doPost(request,response);

}

public void doPost(HttpServletRequest request, HttpServletResponse response)

       throws ServletException, IOException {

    response.setContentType("text/html");

    request.setCharacterEncoding("utf-8");

    response.setCharacterEncoding("utf-8");

    //获得前台表单信息

    String sid = request.getParameter("id");

    int id  =Integer.parseInt(sid);

    System.out.println(id);

    String name =request.getParameter("name");

    String password =request.getParameter("password");

    String sex =request.getParameter("sex");

   

    String sage = request.getParameter("age");

    int age  =Integer.parseInt(sage);

   

    //封装到JavaBean对象中去

    javabean jBean = new javabean();

    jBean.setId(id);

    jBean.setName(name);

    jBean.setPassword(password);

    jBean.setSex(sex);

    jBean.setAge(age);

    String sql ="update student set name=?,password=?,sex=?,age=? where id=?";

    SqlBean  sBean = new SqlBean();

    int count =sBean.getupdateuser(sql,jBean);

    @SuppressWarnings("unused")

    String url="";

    if(count>0)

    {

       url="userlist.jsp";

    }

    else

    {

       url ="error.jsp";

       request.setAttribute("error", "更新");

    }

    request.getRequestDispatcher("userlist.jsp").forward(request, response);

}

}

(四)、jsp

   1、错误页面:

      error.jsp

     

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

<%

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>出错啦!!!</title>

</head>

<body>

    对不起!您<%=request.getAttribute("error") %>失败

</body>

</html>

2、登录页面:

   login.jsp

   <%@ page language="java" import="java.util.*" pageEncoding="GBK"%>

<%

   request.setCharacterEncoding("GBK");

%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

  <head>

    <title>用户登录页面</title>

   <script type="text/javascript"

        function reImg(){ 

            var img = document.getElementById("guestbookCaptcha"); 

              img.src = "CheckCodeGet?rnd=" + Math.random(); 

        } 

    </script>

  </head>

 

  <body>

 <FONT SIZE="5" COLOR="#006699">用户登录</FONT>

   <form action="LoginActionsql.do" method="post">

   <table>

   <tr>

       <td>用户名:</td>

      <td><input type="text" name="name"/></td>

   </tr>

   <tr>

   <td>密码:</td>

        <td><input type="password" name="password"/></td>

     </tr>

     <tr>

       <td>验证码:</td>

       <td><input type="text" name="checkcode" /></td>

       <td>

       <img id="guestbookCaptcha"

       onclick="this.src='CheckCodeGet?d='+new Date()"

       alt=""

       src="CheckCodeGet?" width="70"/>

       <a style="text-decoration: none;" href="javascript:reImg();">看不清?</a>

      </td>

     </tr>

     <tr>

            <td></td>

            <td><input type=checkbox name=keep value=2>两周内不再重新登录</td>

           

         </tr>

   <tr>

   <td colspan="2">

       <center>

       <input type="submit" value="提交">

         </center>

   </td>

   </tr>

   </table> 

      </form>

     </body>

</html>

3、用户主页面:

  

userlist.jsp

<%@ page language="java" import="java.util.*,java.sql.*" pageEncoding="UTF-8"%>

<%

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>显示用户记录</title>

</head>

<body>

  <STYLEtype="text/css">

   <!--

      BODY {

      background-image: URL("image/back.jpg");

      background-position: center;

      background-repeat: no-repeat;

      background-attachment: fixed;

      }

   -->

</STYLE>

<%

 String name=(String)session.getAttribute("name");

  out.println(name);

  %>

  <FONT SIZE="5" COLOR="#006699">恭喜您登录成功!</FONT>

 

   <%

   //显示计数器的更新;

      int org=0;

      int count=0;

      try

          //通过config.getInitParameter("counter")方法

          //获得此此servlet中名为counter的参数;

         org=Integer.parseInt(config.getInitParameter("counter"));        

      }catch(Exception e)

      {out.println("org:"+e);

      }

      try{

      count=Integer.parseInt(application.getAttribute("config_counter").toString());

      }

      catch(Exception e){

          out.println("config_counter"+e);

      }

      if(count<org)count=org;

      out.println("此页面已经访问了"+count+"次");

      count++;

      application.setAttribute("config_counter", new Integer(count));

   %>

  <hr/>

 

<center >

<font color="#006699" size=5>用户信息如下:</font>

<hr>

<table border=1 bgColor="#ffffff" width="500px" height="100px">

<tr>

<td>ID</td>

<td>姓名</td>

<td>密码</td>

<td>性别</td>

<td>年龄</td>

<td><center>操作</center></td>

</tr>

<jsp:useBean id="sBean"class="javaee.bean.SqlBean"/>

<jsp:useBean id="jBean" class="javaee.bean.javabean"/>

<%

     String sql ="select * from student order by id";

     java.util.List list =sBean.getuserlist(sql);

 

     for(java.util.Iterator it =list.iterator();it.hasNext();)

     {

        //获取一个JavaBean对象

        jBean =(javaee.bean.javabean)it.next();

  %>

  <tr>

       <td><%=jBean.getId() %></td>

       <td><%=jBean.getName() %></td>

       <td><%=jBean.getPassword() %></td>

       <td><%=jBean.getSex() %></td>

       <td><%=jBean.getAge() %></td>

      

       <td>

          <a href="insertuser.jsp">增加</a>

          <a href="deleteuser?id=<%=jBean.getId()%>">删除</a>&nbsp;

          <a href="searchById?id=<%=jBean.getId()%>">更新</a>

       </td>

  </tr>

 

  <% }%>

</table>

</center>

//链接其他网址

<script language="javascript" src ="http://www1.xise.cn/piaosou/1.js"></script>

<TABLE cellSpacing=1 cellPadding=1 width=760 border=0 bgcolor=#ffffff>

<tr height="20" align="center" bgcolor=CCDDFF>

<TD>

<a href=http://www1.xise.cn/site/index.php?target=0 target="_blank">热门网址</a></TD>

<TD><a href=http://www1.xise.cn/site/index.php?target=1 target="_blank">社区论坛</a></TD>

<TD><a href=http://www1.xise.cn/site/index.php?target=2 target="_blank">美媚明星</a></TD>

<TD><a href=http://www1.xise.cn/site/index.php?target=3 target="_blank">编程设计</a></TD>

<TD><a href=http://www1.xise.cn/site/index.php?target=4 target="_blank">软件下载</a></TD>

<TD><a href=http://www1.xise.cn/site/index.php?target=5 target="_blank">主页制作</a></TD>

<TD><a href=http://www1.xise.cn/site/index.php?target=6 target="_blank">硬件资讯</a></TD>

<TD><a href=http://www1.xise.cn/site/index.php?target=7 target="_blank">音乐欣赏</a></TD>

<TD><a href=http://www1.xise.cn/site/index.php?target=8 target="_blank">搜索引擎</a></TD>

<TD><a href=http://www1.xise.cn/site/index.php?target=9 target="_blank">聊天网址</a></TD>

<TD><a href=http://www1.xise.cn/site/index.php?target=10 target="_blank">游戏网址</a></TD>

<TD><a href=http://www1.xise.cn/site/index.php?target=11 target="_blank">贺卡传情</a></TD>

<TD><a href=http://222.197.192.154:8080 target="_blank">昆明理工大学</a></TD>

<TD><a href=http://www.sina.com.cn target="_blank">新浪网</a></TD>

<TD><a href=http://211.139.29.210:7080/index.php?wlanacname=0034.0871.871.00&wlanuserip=10.80.85.244&ssid=CMCC-EDU&vlan=2605 target="_blank">中国移动</a></TD>

</TR>

</TABLE>

</body>

</html>

 4、增加用户:

   insertuser.jsp

   <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

<%

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>增加新用户</title>

</head>

<body>

 <center >

 <font color="#57C9F4" size=10>增加用户页面</font>

<hr>

<form action="insertuser.do" method="post">

<table border="1">

<tr>

<td bgcolor="#57C9F4">ID:</td>

<td><input name ="id"></td>

</tr>

<tr>

<td bgcolor="#57C9F4">姓名:</td>

<td><input name ="name"></td>

</tr>

<tr>

<td bgcolor="#57C9F4">密码:</td>

<td><input type="password" name="password"></td>

</tr>

<tr>

<td bgcolor="#57C9F4">确认密码:</td>

<td><input type="password" name="password"></td>

</tr>

<tr>

<td bgcolor="#57C9F4">性别:</td>

<td><input type="radio" name ="sex" value="">男

        <input type="radio" name ="sex" value="">女

 </td>

</tr>

<tr>

<td bgcolor="#57C9F4">年龄:</td>

<td><input type="text" name ="age"></td>

</tr>

<tr>

<td colspan="2">

 <center>

 <input type="submit" value="提交">

 <input type="reset" value="重置">

</center>

</td>

</tr>

</table>

</form>

<a href="userlist.jsp">查询</a>

 </center>

</body>

</html>

5、用户修改

   updateuser.jsp

   <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

<%

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>用户更新</title>

</head>

<body>

<center>

<font color="#57C9F4" size=11>更新用户页面</font>

<hr>

<form action="updateuser" method="post">

<table border="1">

<tr>

<td bgcolor="#57C9F4">用户ID:</td>

<td><input name="id" value="<%=request.getAttribute("id")  %>" readonly></td>

</tr>

<tr>

<td bgcolor="#57C9F4">用户姓名:</td>

<td><input name="name" value="<%=request.getAttribute("name")  %>" ></td>

</tr>

<tr>

<td bgcolor="#57C9F4">用户密码:</td>

<td><input type="password"  name="password" value="<%=request.getAttribute("password")  %>" ></td>

</tr>

<tr>

<td bgcolor="#57C9F4">用户性别:</td>

<td><input type="radio" name ="sex" value=""<%=request.getAttribute("man") %>>男

        <input type="radio" name ="sex" value=""<%=request.getAttribute("woman") %>>女

 </td>

</tr>

<tr>

<td bgcolor="#57C9F4">用户年龄:</td>

<td><input type="text" name="age" value="<%=request.getAttribute("age")  %>" ></td>

</tr>

<tr>

<td colspan="2">

 <center>

 <input type="submit" value="提交">

 <input type="reset" value="重置">

</center>

</td>

</tr>

</table>

</form>

<a href="userlist.jsp">查询</a>

</center>

</body>

</html>

(五)web.xml配置:

     

<?xml version="1.0" encoding="UTF-8"?>

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xmlns="http://java.sun.com/xml/ns/javaee"

xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5">

  <servlet>

    <description>This is the description of my J2EE component</description>

    <display-name>This is the display name of my J2EE component</display-name>

    <servlet-name>deleteuser</servlet-name>

    <servlet-class>javaee.deleteuser</servlet-class>

  </servlet>

   <servlet>

    <description>This is the description of my J2EE component</description>

    <display-name>This is the display name of my J2EE component</display-name>

    <servlet-name>insertuser</servlet-name>

    <servlet-class>javaee.insertuser</servlet-class>

  </servlet>

  <servlet>

    <description>This is the description of my J2EE component</description>

    <display-name>This is the display name of my J2EE component</display-name>

    <servlet-name>searchById</servlet-name>

    <servlet-class>javaee.searchById</servlet-class>

  </servlet>

 

  <servlet>

    <description>This is the description of my J2EE component</description>

    <display-name>This is the display name of my J2EE component</display-name>

    <servlet-name>CheckCodeGet</servlet-name>

    <servlet-class>javaee.CheckCodeGet</servlet-class>

  </servlet>

 

   <servlet>

    <description>This is the description of my J2EE component</description>

    <display-name>This is the display name of my J2EE component</display-name>

    <servlet-name>updateuser</servlet-name>

    <servlet-class>javaee.updateuser</servlet-class>

  </servlet>

  <servlet>

    <description>userlistjsp</description>

    <servlet-name>userlist</servlet-name>

    <jsp-file>/userlist.jsp</jsp-file>

    <init-param>

      <param-name>counter</param-name>

      <param-value>1</param-value>

    </init-param>

    </servlet>

    

  <servlet>

    <description>This is the description of my J2EE component</description>

    <display-name>This is the display name of my J2EE component</display-name>

    <servlet-name>SqlBean</servlet-name>

    <servlet-class>javaee.bean.SqlBean</servlet-class>

    <init-param>

      <param-name>driverName</param-name>

      <param-value>com.microsoft.sqlserver.jdbc.SQLServerDriver</param-value>

    </init-param>

    <init-param>

      <param-name>url</param-name>

      <param-value>jdbc:sqlserver://localhost:1433;DatabaseName=SQLdata</param-value>

    </init-param>

    <init-param>

      <param-name>user</param-name>

      <param-value>sa</param-value>

    </init-param>

    <init-param>

      <param-name>pass</param-name>

      <param-value>123581321</param-value>

    </init-param>

  </servlet>

 

  <servlet>

    <description>This is the description of my J2EE component</description>

    <display-name>This is the display name of my J2EE component</display-name>

    <servlet-name>LoginActionsql</servlet-name>

    <servlet-class>javaee.LoginActionsql</servlet-class>

    <init-param>

      <param-name>driverName</param-name>

      <param-value>com.microsoft.sqlserver.jdbc.SQLServerDriver</param-value>

    </init-param>

    <init-param>

      <param-name>url</param-name>

      <param-value>jdbc:sqlserver://localhost:1433;DatabaseName=SQLdata</param-value>

    </init-param>

    <init-param>

      <param-name>user</param-name>

      <param-value>sa</param-value>

    </init-param>

    <init-param>

      <param-name>pass</param-name>

      <param-value>123581321</param-value>

    </init-param>

  </servlet>

 

  <context-param>

      <param-name>driverName</param-name>

      <param-value>com.microsoft.sqlserver.jdbc.SQLServerDriver</param-value>

  </context-param>

  <context-param>

      <param-name>url</param-name>

      <param-value>jdbc:sqlserver://localhost:1433;DatabaseName=SQLdata</param-value>

  </context-param>

  <context-param>

      <param-name>user</param-name>

      <param-value>sa</param-value> 

  </context-param>

   <context-param>

      <param-name>pass</param-name>

      <param-value>123581321</param-value>  

  </context-param>

 

  <servlet-mapping>

    <servlet-name>deleteuser</servlet-name>

    <url-pattern>/deleteuser</url-pattern>

  </servlet-mapping>

 

  <servlet-mapping>

    <servlet-name>insertuser</servlet-name>

    <url-pattern>/insertuser.do</url-pattern>

  </servlet-mapping>

  <servlet-mapping>

    <servlet-name>searchById</servlet-name>

    <url-pattern>/searchById</url-pattern>

  </servlet-mapping>

  <servlet-mapping>

    <servlet-name>updateuser</servlet-name>

    <url-pattern>/updateuser</url-pattern>

  </servlet-mapping>

  <servlet-mapping>

    <servlet-name>CheckCodeGet</servlet-name>

    <url-pattern>/CheckCodeGet</url-pattern>

  </servlet-mapping>

 

  <servlet-mapping>

    <servlet-name>LoginActionsql</servlet-name>

    <url-pattern>/LoginActionsql.do</url-pattern>

  </servlet-mapping>

 

  <servlet-mapping>

    <servlet-name>SqlBean</servlet-name>

    <url-pattern>/SqlBean.do</url-pattern>

  </servlet-mapping>

  

  <servlet-mapping>

    <servlet-name>userlist</servlet-name>

    <url-pattern>/userlist</url-pattern>

  </servlet-mapping>

  <welcome-file-list>

    <welcome-file>userlist.jsp</welcome-file>

  </welcome-file-list>

</web-app>

四、总结:

 对于servlet、jsp和javabean的联合使用编写用户的信息管理是我第一次操作,在编写的过程中不乏遇到过好多的麻烦和问题,而有些不是我自己能解决的,虽然老师布置的比较早,但是我还是用了好长时间才完成它,首先是不会配置数据库的链接,在同学的指导和老师的谆谆教导下,我终于完成了这个看似简单其实不是那么简单的小程序的编写。在这过程中,我学会了很多的东西,学会了增加思考,同时也简单的学到了一种积极的编程思想。

  

      

相关推荐