如何实现利用EL表达式去获取用户头像
2014-11-25 18:03
483 查看
结束了为期两个星期的小项目,总结一下。
首先说一下项目需求,本项目是一个类似于知乎一样的系统,用户登录以后需要从数据库中获取用户信息,例如头像。如何获取呢?
登录成功后将User user存入session,这个user中的信息是从tb_user中读取的,tb_user中存有用户名、密码、手机、邮箱等信息,用户还有一些其他信息,为了防止一张表过于复杂,我将头像、等级等一些信息放在tb_user_info这张表中。
解决方案一、
将user存入session中的同时,从数据库中读取对应得userinfo信息,也将其封装成一个对象存入session,用的时候就取session就好了,但是感觉这个方法有点low,呵呵呵.....
解决方案二、
先贴出bean吧:
public class UserInfo { private String id; private String username; private String nickname; private String photo; private String signature; private int rate; }
public class User { private String id; private String username; private String password; private String mobile; private String email; private boolean validation; private boolean forbid; }
下面就利用EL表达式去调用java代码了:
1.首先写一个java类,其中有个静态方法:
public static UserInfo getUserInfo(User user){ UserInfoDao dao = new UserInfoDaoImpl(); UserInfo info = null; if(user!=null) <span style="white-space:pre"> </span>info= dao.findByUser(user);//此方法传入user,获取userinfo对象 return info; }注意这个方法必须为静态的。
2.在WEB-INF下新建一个tld文件
<taglib xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-jsptaglibrary_2_1.xsd" version="2.1"> <description>自定义函数,让EL表达式调用</description> <display-name>custom fn</display-name> <tlib-version>1.0</tlib-version> <short-name>fn</short-name> <uri>/niit</uri> <function> <name>getUserInfo</name> <function-class>com.niit.utils.utils</function-class> <function-signature>com.niit.bean.UserInfo getUserInfo(com.niit.bean.User){</function-signature> </function> </taglib>3.在页面中调用自定义函数:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@taglib uri="/niit" prefix="fn"%> <!-- 注意此处一定要引入自定义标签 -->
<!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>你好,${user.username}</title> </head> <body> <img src="${fn:getUserInfo(user).photo}"> </body> </html>基本就这样,其实不只是为了这个项目,也为了去练习一下EL表达式吧,即EL表达式调用自定义函数
相关文章推荐
- javaniu用户头像如何实现的啊,能否提供一份代码呢
- 利用ajax实现登录:验证完用户信息后如何保存用户信息并实现跳转
- WordPress中利用AJAX异步获取评论用户头像的方法
- php 微信开发获取用户信息如何实现
- 如何进行用户分层,实现精细化运营?利用RFM用户价值模型
- php 微信开发获取用户信息如何实现
- 如何获取和利用“用户及其使用网站原因的信息”
- 利用servlet 实现JAVAWeb访问微信OAuth2.0认证,获取用户信息的实例
- 如何利用新浪微博开放平台API获取新浪微博用户数据
- h5开发中,利用微信或者QQ登陆以后获取用户头像在canvas画布显示问题
- 如何利用PopupWindow实现弹出菜单并解决焦点获取以及与软键盘冲突问题
- iOS开发swift如何调用系统相册和相机获取图片设置用户头像
- laravel博客开发之利用jcorp结合laravel和ajaxupload实现用户头像上传和裁剪功能
- 【远程调用框架】如何实现一个简单的RPC框架(三)优化一:利用动态代理改变用户服务调用方式
- 如何利用反射实现EL表达式
- 探究ftp的奥妙之系统用户如何上传下载文件、vsftpd如何识别证书并利用客户端来实现远程连接传输
- 利用FaceBook实现第三方登陆(自定义登陆按钮,非官方按钮)并获取用户数据
- 如何利用PopupWindow实现弹出菜单并解决焦点获取以及与软键盘冲突问题
- HTML提交表单用户选择的头像如何利用<select>标签提交到PHP并连接数据库进行存读操作
- 切换导航标签实现当前标签颜色改变以及利用js如何准确获取当前页面url网址信息