做题

来源:互联网 发布:免费收据打印软件 编辑:程序博客网 时间:2024/04/27 15:33

有拦截器

public class LoginInterceptor implements HandlerInterceptor {
    @Override
    public boolean preHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o) throws Exception {
        User user=(User) httpServletRequest.getSession().getAttribute("user");
        if (user==null){
        }
        return false;
    }

    @Override
    public void postHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, ModelAndView modelAndView) throws Exception {
    }

    @Override
    public void afterCompletion(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, Exception e) throws Exception {
    }



属性有时间

import java.text.SimpleDateFormat;
import java.util.Date;
public class User {
    int id;
    String accountNumber;
    String name;
    String password;
    String sex;
    @DateTimeFormat(pattern="yyyy-MM-dd")
    Date birthday;
    int age;

    public static final SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");


VO pojo类

public class VO {
    String ids;
    String content;



dao 类

public interface IUserDao {

    //登陆方法
    User login(User user);

    //注册用户
    void addUser(User user);

    //验证账号是否重复
    int checkAccountNumber(String acc);

    //查询所有用户
    List<User> getUsers();

    //修改用户基本信息
    void updateUser(User user);

sql 语句

  <select id="login" resultType="User">
  SELECT * FROM tb_user WHERE account_number=#{accountNumber} AND password=#{password}
  </select>

  <insert id="addUser" parameterType="User">
    INSERT INTO tb_user (account_number,password,name,sex,birthday) VALUES (#{accountNumber},#{password},#{name},#{sex},#{birthday})
  </insert>

  <select id="getUsers" resultType="User">
    SELECT id,name FROM tb_User
  </select>

  <select id="checkAccountNumber" resultType="int">
    SELECT COUNT(id) FROM tb_user WHERE account_number=#{acc}
  </select>

  <update id="updateUser" parameterType="User">
    UPDATE tb_user SET name=#{name},sex=#{sex},birthday=#{birthday} WHERE id=#{id}
  </update>




public interface IMessageDao {

    //发送邮件
    void sendMessage(List<Message> messageList);

    List<Message> findAllMessages();

    List<Message> findMessagesByName(String name);
删除
    void deleteMessage(VO vo);

    List<Message> findMessagesByContent(String content);


sql 语句

<select id="findAllMessages" resultType="Message">
    SELECT id,content,createtime AS createTime,send_name AS sendName,receive_name AS receiveName,level FROM tb_message
  </select>
  
  <select id="findMessagesByName" resultType="Message" parameterType="String">
  SELECT id,content,createtime AS createTime,send_name AS sendName,receive_name AS receiveName,level FROM tb_message  WHERE receive_name=#{name}
  </select>

  <insert id="sendMessage" parameterType="java.util.List" useGeneratedKeys="true">
    INSERT INTO tb_message (content,createtime,receive_name,send_name,level) VALUES
    <foreach collection="list" item="item" index="index" separator="," >
      (#{item.content},#{item.createTime},#{item.receiveName},#{item.sendName},#{item.level})
    </foreach>
  </insert>

  <delete id="deleteMessage" parameterType="VO">
    DELETE FROM tb_message WHERE id IN (${ids})
  </delete>

  <select id="findMessagesByContent" parameterType="String" resultType="Message">
    SELECT id,content,createtime AS createTime,send_name AS sendName,receive_name AS receiveName,level FROM tb_message WHERE content LIKE CONCAT(CONCAT('%', #{content}), '%')
  </select>




service 类

@Service
@Transactional(readOnly = true)
public class MessageServiceImpl implements IMessageService {

    @Autowired
    private IMessageDao dao;

    @Override
    @Transactional(readOnly = false)
    public void sendMessage(List<Message> messageList) {
        dao.sendMessage(messageList);
    }

    @Override
    public List<Message> findAllMessages() {
        return dao.findAllMessages();
    }

    @Override
    public List<Message> findMessagesByName(String name) {
        return dao.findMessagesByName(name);
    }

    @Override
    @Transactional(readOnly = false)
    public void deleteMessage(VO vo) {
        dao.deleteMessage(vo);
    }

    @Override
    public List<Message> findMessagesByContent(String content) {
        return dao.findMessagesByContent(content);
    }



@Service
@Transactional(readOnly = true)
public class UserServiceImpl implements IUserService {

    @Autowired
    private IUserDao dao;

    @Override
    public User login(User user) {
        return dao.login(user);
    }

    @Override
    @Transactional(readOnly = false)
    public void addUser(User user) {
        dao.addUser(user);
    }

    @Override
    public int checkAccountNumber(String acc) {
        return dao.checkAccountNumber(acc);
    }

    @Override
    public List<User> getUsers() {
        return dao.getUsers();
    }

    @Override
    @Transactional(readOnly = false)
    public void updateUser(User user) {
        dao.updateUser(user);
    }



controller 类

@Controller
@RequestMapping(value = "/user")
public class UserAction 

    @Autowired
    private IUserService userService;

    //登陆业务
    @RequestMapping(value = "/login",method = RequestMethod.POST)
    public ModelAndView login(User user, HttpSession session){
        user=userService.login(user);
        if (user.getId()!=0){
            //计算用户年龄
            int age= AgeUtils.getAgeFromBirthTime(user.getBirthday());
            //给登陆用户年龄赋值
            user.setAge(age);
            session.setAttribute("user",user);
            return new ModelAndView("homePage");
        }
        else {
            return new ModelAndView("error");
        }
    }


    @RequestMapping(value = "/register",method = RequestMethod.POST)
    public ModelAndView register(User user){
        userService.addUser(user);
        return new ModelAndView("login");
    }

    @RequestMapping(value = "/checkAccountNumber",method = RequestMethod.GET)
    @ResponseBody
    public Map<String,Object> checkAccountNumber(String acc) throws Exception{
        Map<String,Object> map=new HashMap<String,Object>();
        acc= URLDecoder.decode(acc,"utf-8");
        int flag=userService.checkAccountNumber(acc);
        if (flag==0) {
            map.put("msg",1);
        }
        else {
            map.put("msg",0);
        }
        return map;
    }


    @RequestMapping(value = "/personal",method = RequestMethod.GET)
    public ModelAndView toPersonal(){
        return new ModelAndView("personal");
    }

    @RequestMapping(value = "/homePage",method = RequestMethod.GET)
    public ModelAndView toHomePage(){
        return new ModelAndView("homePage");
    }

    @RequestMapping(value = "/getCurrentUser",method = RequestMethod.GET)
    @ResponseBody
    public Map<String,Object> getCurrentUser(HttpSession session){
        Map<String,Object> map=new HashMap<String,Object>();
        User user=(User) session.getAttribute("user");
        map.put("user",user);
        return map;
    }

    @RequestMapping(value = "/updateUser",method = RequestMethod.POST)
    public ModelAndView updateUser(User user,HttpSession session){
        User user1=(User) session.getAttribute("user");

        user1.setName(user.getName());
        user1.setSex(user.getSex());
        user1.setBirthday(user.getBirthday2());

        int age=AgeUtils.getAgeFromBirthTime(user1.getBirthday());
        user1.setAge(age);
        userService.updateUser(user1);
        session.setAttribute("user",user1);
        return new ModelAndView("personal");
    }




@Controller
@RequestMapping(value = "/message")
public class MessageAction {

    @Autowired
    private IUserService userService;
    @Autowired
    private IMessageService messageService;

    @RequestMapping(value = "/toSend",method = RequestMethod.GET)
    public String toSend(Model model){
        List<User> users=userService.getUsers();
        model.addAttribute("users",users);
        return "send";
    }

//-------------------------------------------ajax多人发送消息业务------------------------------------------

    @RequestMapping(value = "/sendMessage",method = RequestMethod.GET)
    @ResponseBody
    public Map<String,Object> sendMessage(String names, String content, String level, HttpSession session) throws Exception{

        Map<String,Object> map=new HashMap<String,Object>();

        if (names==null&&content==null){//判断是否传来用户名和消息是否为空
            map.put("flag",0);
            return map;
        }

        names= URLDecoder.decode(names,"UTF-8");
        content=URLDecoder.decode(content,"UTF-8");
        level=URLDecoder.decode(level,"UTF-8");

        List<Message> messageList=new ArrayList<Message>();

        for (String name :names.split(",")) {
            Message message=new Message();
            message.setLevel(level);

            User user=(User) session.getAttribute("user");
            if (user==null) {
                message.setSendName("系统");
            }
            else {
                message.setSendName(user.getName());
            }
            message.setReceiveName(name);
            message.setCreateTime(new Date());
            message.setContent(content);
            messageList.add(message);
        }

        messageService.sendMessage(messageList);
        map.put("flag",1);
        return map;
    }

    @RequestMapping(value = "/toMessage",method = RequestMethod.GET)
    public String toMessage(Model model){
        List<User> users=userService.getUsers();
        List<Message> messages=messageService.findAllMessages();
        model.addAttribute("users",users);
        model.addAttribute("messages",messages);
        return "message";
    }

    @RequestMapping(value = "/findMessagesByName",method = RequestMethod.GET)
    @ResponseBody
    public Map<String,Object> findMessagesByName(String name) throws Exception{
        name=URLDecoder.decode(name,"utf-8");
        Map<String,Object> map=new HashMap<String,Object>();
        List<Message> messages;
        if (name.equals("0")){
            messages=messageService.findAllMessages();
        }
        else {
            messages=messageService.findMessagesByName(name);
        }
        map.put("messages",messages);
        return map;
    }

    @RequestMapping(value = "/deleteMessage",method = RequestMethod.GET)
    @ResponseBody
    public Map<String,Object> deleteMessage(String ids,String name) throws Exception{
        ids=URLDecoder.decode(ids,"utf-8");
        name=URLDecoder.decode(name,"utf-8");

        VO vo=new VO();
        vo.setIds(ids);
        messageService.deleteMessage(vo);

        Map<String,Object> map=new HashMap<String,Object>();
        List<Message> messages;
        if (name.equals("0")){
            messages=messageService.findAllMessages();
        }
        else {
            messages=messageService.findMessagesByName(name);
        }
        map.put("messages",messages);
        return map;
    }

    @RequestMapping(value = "/findMessagesByContent",method = RequestMethod.GET)
    @ResponseBody
    public Map<String,Object> findMessagesByContent(String content) throws Exception{
        Map<String,Object> map=new HashMap<String,Object>();
        content=URLDecoder.decode(content,"utf-8");
        if (!content.equals("")){
            List<Message> messages=messageService.findMessagesByContent(content);
            map.put("messages",messages);
        }
        else {
            List<Message> messages=messageService.findAllMessages();
            map.put("messages",messages);
        }
        return map;
    }




jsp 界面  第一个界面

<a href="/jsp/login.jsp">登陆</a>
<a href="/book/toList.action">直接查看书店</a>
<a href="/message/toSend.action">直接前往信息发送页面</a>
<a href="/message/toMessage.action">直接前往信息查看页面</a>


<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>登陆</title>
</head>
<body>
    <form action="/user/login.action" method="post">
        <table>
            <tr><td>账号:</td><td><input name="accountNumber"></td></tr>
            <tr><td>密码:</td><td><input type="password" name="password"></td></tr>
            <tr><td><input type="submit" value="登陆"></td><td><input type="reset" value="重写"></td></tr>
        </table>
    </form>
    <a href="register.jsp">前往注册</a>
</body>
</html>




<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>注册</title>
    <script src="/js/jquery-1.8.3.js"></script>
    <script>
        var flag1=false;
        var flag2=true;
        function checkAccountNumber() {
            var acc0=$("#accountNumber").val();
            var acc=encodeURI(acc0);
            $.ajax({
                type: "get",
                url: "/user/checkAccountNumber.action",
                data: {acc:acc},
                dataType: "json",
                success: function (data) {
                    var flag=data.msg;
                    if(flag==1){
                        $("#s1").html("<b style='color: aquamarine'>账号可用</b>");
                        flag1=true;
                    }
                    else {
                        $("#s1").html("<b style='color: crimson'>账号已被使用</b>");
                    }
                },
                error: function () {
                    $("#s1").html("<b style='color: crimson'>出了点差错</b>");
                }
            });
        }


        function checkPwd() {
            var pwd1=$("#pwd1").val();
            var pwd2=$("#pwd2").val();
            if (pwd1==pwd2){
                $("#s2").html("");
                flag2=true;
            }
            else {
                $("#s2").html("<b style='color: crimson'>两次密码不一致</b>");
            }
        }


        function checkAll() {
            if (flag1&&flag2){
                $("form").submit();
            }
            else {
                alert("请检查表单");
            }
        }
    </script>
</head>
<body>
    <form action="/user/register.action" method="post">
        <table>
            <tr><td>账号:</td><td><input name="accountNumber" id="accountNumber" onblur="checkAccountNumber()"><span id="s1">*</span></td></tr>
            <tr><td>用户名:</td><td><input name="name">*</td></tr>
            <tr><td>密码:</td><td><input type="password" name="password" id="pwd1"></td></tr>
            <tr><td>确认密码:</td><td><input type="password" id="pwd2" onblur="checkPwd()"><span id="s2"></span></td></tr>
            <tr><td>性别:</td><td>
                <input type="radio" name="sex" value="男">男
                <input type="radio" name="sex" value="女">女
            </td></tr>
            <tr><td>出生日期:</td><td><input type="date" name="birthday"></td></tr>
            <tr><td><input type="button" value="注册" onclick="checkAll()"></td><td><input type="reset" value="重写"></td></tr>
        </table>
    </form>
    <a href="login.jsp">返回登陆</a>
</body>
</html>


<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>登陆失败</title>
</head>
<body>
    <h3><a href="login.jsp">密码或用户名错误,请重新登陆</a></h3>
</body>
</html>



<%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
    <title>查看信息</title>
    <script src="/js/jquery.min.js"></script>
    <script>
        function findMessagesByName() {


            var name=$("#s1").val();
            name=encodeURI(name);


            $.ajax({
                type:"GET",
                url: "/message/findMessagesByName.action",
                data: {name:name},
                dataType: "json",
                success: function (data) {


                    var html="";


                    var list=data.messages;
                    for(var i=0;i<list.length;i++){
                        html+="<tr>" +
                            "<td><input type='checkbox' id='id' value='"+list[i].id+"'></td>" +
                            "<td>"+list[i].id+"</td>" +
                            "<td>"+list[i].content+"</td>" +
                            "<td>"+list[i].createTime+"</td>" +
                            "<td>"+list[i].sendName+"</td>" +
                            "<td>"+list[i].receiveName+"</td>" +
                            "<td>"+list[i].level+"</td>" +
                            "<td><input type=\"button\" value=\"删除\" onclick='deleteMessage("+list[i].id+")'></td>" +
                            "</tr>";
                    }
                    $("#t1").html(html);
                    $("#content").val("");
                },
                error: function () {
                    alert("系统繁忙,请稍后再试");
                }
            });
        }


        function deleteMessage(checkId) {
            checkId.toString();
            var ids=encodeURI(checkId);
            var name=$("#s1").val();
            name=encodeURI(name);
            $.ajax({
                type: "GET",
                url: "/message/deleteMessage.action",
                data: {ids:ids,name:name},
                dataType: "json",
                success: function (data) {


                    var html="";


                    var list=data.messages;


                    for(var i=0;i<list.length;i++){
                        html+="<tr>" +
                            "<td><input type='checkbox' id='id' value='"+list[i].id+"'></td>" +
                            "<td>"+list[i].id+"</td>" +
                            "<td>"+list[i].content+"</td>" +
                            "<td>"+list[i].createTime+"</td>" +
                            "<td>"+list[i].sendName+"</td>" +
                            "<td>"+list[i].receiveName+"</td>" +
                            "<td>"+list[i].level+"</td>" +
                            "<td><input type=\"button\" value=\"删除\" onclick='deleteMessage("+list[i].id+")'></td>" +
                            "</tr>";
                    }
                    $("#t1").html(html);
                    $("#content").val("");
                },
                error: function () {
                    alert("系统繁忙,请稍后重试");
                }
            });
        }


        function deleteSomeMessages() {
            var checkId=[];


            var name=$("#s1").val();
            name=encodeURI(name);


            $("input:checked").each(function () {
                checkId.push($(this).val());
            });


            if(checkId.length==0){
                alert("请至少选择一项");
                return
            }


            checkId.toString();
            var ids=encodeURI(checkId);


            $.ajax({
                type: "get",
                url: "/message/deleteMessage.action",
                data: {ids:ids,name:name},
                dataType: "json",
                success: function (data) {
                    var html="";
                    var list=data.messages;


                    for(var i=0;i<list.length;i++){
                        html+="<tr>" +
                            "<td><input type='checkbox' id='id' value='"+list[i].id+"'></td>" +
                            "<td>"+list[i].id+"</td>" +
                            "<td>"+list[i].content+"</td>" +
                            "<td>"+list[i].createTime+"</td>" +
                            "<td>"+list[i].sendName+"</td>" +
                            "<td>"+list[i].receiveName+"</td>" +
                            "<td>"+list[i].level+"</td>" +
                            "<td><input type=\"button\" value=\"删除\" onclick='deleteMessage("+list[i].id+")'></td>" +
                            "</tr>";
                    }
                    $("#t1").html(html);
                    $("#content").val("");
                },
                error: function () {
                    alert("系统繁忙,请稍后再试");
                }
            });
        }
        
        function checkAll() {
            $("#t1 :checkbox").each(function () {
                $(this).prop("checked", !$(this).prop("checked"));
            });
            $("#t1:checkbox").prop("checked",true);
        }


        function searchContent() {
            var msg=$("#content").val();


            var content=encodeURI(msg);
            $.ajax({
                type: "get",
                url: "/message/findMessagesByContent.action",
                data: {content:content},
                dataType:"json",
                success: function (data) {
                    var html="";
                    var list=data.messages;


                    for(var i=0;i<list.length;i++){
                        html+="<tr>" +
                            "<td><input type='checkbox' id='id' value='"+list[i].id+"'></td>" +
                            "<td>"+list[i].id+"</td>" +
                            "<td>"+list[i].content+"</td>" +
                            "<td>"+list[i].createTime+"</td>" +
                            "<td>"+list[i].sendName+"</td>" +
                            "<td>"+list[i].receiveName+"</td>" +
                            "<td>"+list[i].level+"</td>" +
                            "<td><input type=\"button\" value=\"删除\" onclick='deleteMessage("+list[i].id+")'></td>" +
                            "</tr>";
                    }
                    $("#t1").html(html);
                },
                error: function () {
                    alert("系统繁忙,请稍后重试");
                }
            });
        }


    </script>
</head>
<body>
    <h1>站内信息查看页面</h1>
    <form>
        <select id="s1" onchange="findMessagesByName()">
            <option value="0" selected="selected">所有人</option>
            <c:forEach items="${users}" var="one">
                <option value="${one.name}">${one.name}</option>
            </c:forEach>
        </select>
        <input id="content">
        <input type="button" value="查询" onclick="searchContent()">
        <input type="button" value="全选/全不选" onclick="checkAll()">
        <input type="button" value="批量删除" onclick="deleteSomeMessages()">
        <table border="1px">
            <thead>
                <tr>
                    <td></td>
                    <td width="200px">消息id</td>
                    <td width="200px">消息内容</td>
                    <td width="200px">时间</td>
                    <td width="200px">发送人</td>
                    <td width="200px">接收人</td>
                    <td width="200px">重要等级</td>
                    <td width="200px">操作</td>
                </tr>
            </thead>
            <tbody id="t1">
                <c:forEach items="${messages}" var="one">
                    <tr>
                        <td><input type="checkbox" value="${one.id}"></td>
                        <td>${one.id}</td>
                        <td>${one.content}</td>
                        <td>${one.createTime}</td>
                        <td>${one.sendName}</td>
                        <td>${one.receiveName}</td>
                        <td>${one.level}</td>
                        <td><input type="button" value="删除" onclick="deleteMessage(${one.id})"></td>
                    </tr>
                </c:forEach>
            </tbody>
        </table>
        <a href="/message/toSend.action">返回发送页面</a>
        <c:if test="${sessionScope.user!=null}"><br><a href="/user/homePage.action">返回主页</a></c:if>
    </form>
</body>





<%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
    <title>发送邮件</title>
    <script src="/js/jquery-1.8.3.js"></script>
    <script>
        function sendMessage() {
            var checkLevel=$("#s1").val();
            var msg=$("#msg").val();


            //判断消息框是否为空
            if(msg==""){
                alert("消息不能为空");
                return;
            }


            var checkName=[];
            $("input:checked").each(function () {
                checkName.push($(this).val());
            });
            //检查是否选择用户
            if(checkName.length==0){
                alert("请选择收信人");
                return;
            }


            var names=checkName.toString();
            var level=encodeURI(checkLevel);
            var names=encodeURI(names);
            var content=encodeURI(msg);


            $.ajax({
                    type : "GET",
                    url: "sendMessage.action",
                    data: {names:names,content:content,level:level},
                    dataType: "json",
                    success: function(data) {
                        $("input:checked").prop("checked",false);
                        $("#msg").val("");


                        if(data.flag==1){
                            alert("发送成功");
                        }
                        else {
                            alert("发送格式有误,请检查");
                        }
                    },
                    error: function () {
                        alert("系统繁忙,请稍后重试");
                    }
                });


        }
    </script>
</head>
<body>
    <h1>站内信息发送页面</h1>
    <form>
        <table>
            <tr><td>请选择联系人</td><td>
                <c:forEach items="${users}" var="one">
                    <input type="checkbox" value="${one.name}">${one.name}
                </c:forEach>
            </td></tr>
            <tr>
                <td>请选择重要等级</td>
                <td>
                    <select id="s1">
                        <option value="非常重要">非常重要</option>
                        <option value="有点重要">有点重要</option>
                        <option value="爱看不看">爱看不看</option>
                        <option value="垃圾消息">垃圾消息</option>
                    </select>
                </td>
            </tr>
            <tr><td>请输入消息内容</td><td><textarea id="msg"></textarea></td></tr>
            <tr><td></td><td><input type="button" value="发送" onclick="sendMessage()"></td></tr>
        </table>
        <a href="/message/toMessage.action">返回查看信息页面</a>
        <c:if test="${sessionScope.user!=null}"><br><a href="/user/homePage.action">返回主页</a></c:if>
    </form>
</body>
</html>




修改界面

<%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
    <title>个人信息</title>
    <script src="/js/jquery-1.8.3.js"></script>
    <script>
        function clickUpdate() {
            $.ajax({
                type: "get",
                url: "/user/getCurrentUser.action",
                data: {},
                dataType: "json",
                success: function (data) {
                    var user=data.user;
                    var html="<tr><td>姓名:</td><td><input name='name' value='"+user.name+"'></td></tr>"+
                        "<tr><td>性别:</td><td><input type='radio' name='sex' value='男'>男" +
                        "<input type='radio' name='sex' value='女'>女</td></tr>"+
                        "<tr><td>生日:</td><td><input type='date' name='birthday' value='"+user.birthday+"'></td></tr>"+
                        "<tr><td><input type=\"button\" value=\"保存\" onclick=\"toUpdate()\"></td><td></td></tr>";
                    $("#t1").html(html);
                },
                error: function () {
                    alert("系统繁忙,请稍后重试");
                }
            });
        }


        function toUpdate() {
            $("#f1").submit();
        }
    </script>
</head>


<body>
    <form action="/user/updateUser.action" method="post" id="f1">
        <table id="t1">
            <tr><td>姓名:</td><td>${sessionScope.user.name}</td></tr>
            <tr><td>登陆账号:</td><td>${sessionScope.user.accountNumber}</td></tr>
            <tr><td>性别:</td><td>${sessionScope.user.sex}</td></tr>
            <tr><td>生日:</td><td>${sessionScope.user.birthday}</td></tr>
            <tr><td>年龄:</td><td>${sessionScope.user.age}</td></tr>
            <tr><td><input type="button" value="点击修改" onclick="clickUpdate()"></td><td></td></tr>
        </table>
        <a href="/user/homePage.action">返回个人主页</a>
    </form>
</body>
</html>



登录成功后的界面

<%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
    <title>个人主页</title>
</head>
<body>
    <h1>欢迎你,${sessionScope.user.name} | <a>注销</a></h1>
    <h3><a href="/book/bookStore.action">浏览书店</a></h3>
    <h3><a href="/book/bookStore.action">查看我的图书</a></h3>
    <h3><a href="/user/personal.action">个人信息</a></h3>
    <h3><a href="/message/toSend.action">发送消息</a></h3>
    <h3><a href="/message/toMessage.action">收信箱</a></h3>
</body>
</html>



原创粉丝点击