jsp+servlet问题100分 你能都拿走么_html/css_WEB-ITnose

时间:2016-06-24 11:54:34 来源:互联网 作者: 神秘的大神 字体:

求jsp写的修改个人信息的代码!数据库是access。
<%@page import="bean.UserinfoBean"%>
<%@page import="bean.MessageinfoBean"%>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
UserinfoBean userinfo=(UserinfoBean)session.getAttribute("userinfors");
%>
<%
UserinfoBean userinfoBean = (UserinfoBean)request.getSession().getAttribute("userinfoBean");
%>










尊敬的<%=userinfo.user_nicheng %>请修改个人资料



action="<%=request.getContextPath()%>/servlet/lybControServlet"
method="post" onSubmit="docheck()">

















face="Arial, Helvetica, sans-serif">用户名: name="UserName" readonly value="<%=userinfo.user_name %>"> value="edituser">

请修改昵称: name="NickName">
请修改性别: name="Sex" value="0" checked>男 name="Sex" value="1">女
请修改Email地址: name="Email">


name="res" value="重填">



返回






这是前台的代码,后台方法怎么写?


回复讨论(解决方案)

我的问题 难还是?

public void changeUserInfo(HttpServletRequest req, HttpServletResponse res) throws IOException, SQLException{
int user_id = Integer.parseInt(req.getParameter("user_id"));


UserinfoBean userinfoBean = new UserinfoBean();
userinfoBean.setUser_name("");
userinfoBean.setUser_nicheng("");
userinfoBean.setUser_sex("");
userinfoBean.setUser_mail("");
userinfoBean.setUser_id(user_id);
HttpSession session = req.getSession() ;
session.setAttribute("userinfoBean", userinfoBean);
res.sendRedirect(req.getContextPath()+"/jsp/mofy.jsp");
}
这个方法我已经能调用了 但是没有写,不会 菜鸟,求大神高数我怎么写

在docheck()方法内实现写入数据库就可以。你看看用struts框架怎么搞吧

求更改代码码,struts框架没用过

给你写了一个简单的,

首先真的很简单,是W7+mysql5.5+servlet

mysql的sql语句:

create database person;use personcreate table student(    id int not null auto_increment,    username varchar(100),    name varchar(50),    sex varchar(10),    email varchar(50),   primary key(id));-- 插入一条测试数据insert into student(username,name,sex,email)values('test123','fdsaas','1','fdsafkldjsklfds@qq.com');


------------------

下面是Java部分:

DB类[时间仓促,可改进地方很多,自己慢慢练吧]

package test;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;import java.sql.Statement;/** * Created by prd on 2014/11/6. */public class DB {    private Connection conn = null;    /**     * 获取连接     *     * @return     * @throws java.sql.SQLException     */    public Connection getConn() {        try {            Class.forName("com.mysql.jdbc.Driver");// 加载Mysql数据驱动            conn = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/person", "root", "123456");            return conn;        } catch (Exception e) {            e.printStackTrace();        }        return conn;    }    /**     * 关闭连接     *     * @throws SQLException     */    public void closeConn() {        try {            if (conn != null && conn.isClosed()) {                conn.close();            }        } catch (SQLException e) {            e.printStackTrace();        }    }    /**     * 更新数据.     * 

* 数组分别是:username,name,sex,email, * id为固定.可动态修改. * * @param params * @return */ public int update(String[] params) { conn = getConn(); String sql = " update student set username='" + params[0] + "',name='" + params[1] + "',sex='" + params[2] + "',email='" + params[3] + "' where id=1 "; Statement st = null; int count = 0; try { st = conn.createStatement(); count = st.executeUpdate(sql); } catch (SQLException e) { e.printStackTrace(); } closeConn(); return count; }}


下面是servlet类:

package test;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.io.IOException;/** * Created by prd on 2014/11/6. */public class UpdateUserServlet extends HttpServlet {    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {        request.setCharacterEncoding("utf-8");        String name = request.getParameter("name");        String username = request.getParameter("username");        String sex = request.getParameter("sex");        String email = request.getParameter("email");        if(sex.equals("0"))        {            sex="男";        }else        {            sex="女";        }        DB db = new DB();        int count =db.update(new String[]{username,name,sex,email});        if(count>0)        {            System.out.println("更新成功");        }else        {            System.out.println("更新失败");        }    }    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {    }}


下面是jsp页面[ 替换你原来的表单部分]:

 
用户名:
请修改昵称:
请修改性别:
请修改Email地址:

返回



下面是web.xml的配置:

 
     
   
   
    UpdateUserServlet
    
   
    test.UpdateUserServlet
    
      
   
   
    UpdateUserServlet
    
   
    /servlet/UpdateUserServlet
    
  
 


记得一定要导入mysql的驱动包,直接百度搜索java连接mysql驱动包就可以,加入到项目里面。

如果你要用access,改掉这两句就可以了.

 Class.forName("com.mysql.jdbc.Driver");// 加载Access数据的驱动            conn = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/person", "root", "123456");//连接地址

sql code这个放到那里,表已经有了,叫userinfo,而且那个db 最下面的更新数据我怎么加到我的db里面啊

大神,完全跟你写的不一样,我已经打私信给你了,你打开加我qq远成协助一下你就知道怎么回事了