/**
* cookie写入....常用链接
* 写cookie 模式:(language)en_US_menu=url,url,url....
* @return String
**/
public String writeLinks(){
//获取语言 没有 就从cookie中读取
if(null==locale_language||"".equals(locale_language)){
locale_language=getLanguage();
}
String key=locale_language+"_menu";
HttpServletResponse response=ServletActionContext.getResponse();
Cookie cookie=null;
try {
links=new String(links.getBytes("iso-8859-1"), "utf-8");
cookie=new Cookie(key,URLEncoder.encode(links, "utf-8"));
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//设置cookie的有效日期 以秒为单位
cookie.setMaxAge(365*24*60*60);
response.addCookie(cookie);
return readLinks();
}
/**
* cookie读取....常用链接
* 读cookie 通过 key:(language)en_US_menu=value:noteName_/wmba/user/user_doCreate.action
* @return String
* **/
public String readLinks(){
//获取语言 没有 就从cookie中读取
if(null==locale_language||"".equals(locale_language)){
locale_language=getLanguage();
}
//根据语言拼凑cookie中菜单的key
String key=locale_language+"_menu";
HttpServletRequest request=ServletActionContext.getRequest();
//修改常用链接 时 传递了常用链接
if(null==links||"".equals(links)){
//获得客户端所有的cookie信息
Cookie[] cookies=request.getCookies();
//循环遍历所有的cookie 找到 根据key对应的cookie
for(Cookie ck : cookies){
if(ck.getName().equals(key)&&null!=ck.getValue()&&!"".equals(ck.getValue())){
try {
links=URLDecoder.decode(ck.getValue(), "UTF-8");
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
//list 保存常用连接
linkList=new ArrayList<EsbAdminMenuInfo>();
//从cookie中找到对应的常用链接 否则去数据库中的链接
if(links != null &&!"".equals(links)){
String[] array_links=links.split(",");
for(String link : array_links){
EsbAdminMenuInfo menu=new EsbAdminMenuInfo();
menu.setNoteName(link.substring(0,link.indexOf("_")));
menu.setUrl(link.substring(link.indexOf("_")+1));
linkList.add(menu);
}
}else{
//从配置文件中加载而来
int linkCount=Integer.valueOf(ServletActionContext.getContext().getApplication().get("linkCount").toString());
//设置查询条件
EsbAdminUserInfo userInfo=(EsbAdminUserInfo)ServletActionContext.getRequest().getSession().getAttribute("user");
//得到所有的菜单
List<EsbAdminMenuInfo> menusAll=this.loadingMenu(userInfo);
//过滤 linkCount个 并 只要有url的菜单
for(int i=0;i<menusAll.size();i++){
if(menusAll.get(i).getUrl()!=null&&!("".equals(menusAll.get(i).getUrl()))){
if(linkList.size()<linkCount){
linkList.add(menusAll.get(i));
}
}
}
}
return "index";
分享到:
相关推荐
MySQL写入中文乱码之处理character
处理中文乱码处理中文乱码处理中文乱码处理中文乱码处理中文乱码处理中文乱码处理中文乱码
js 中存取 cookie 解决中文乱码
C# 将中文乱码转换成中文C# 将中文乱码转换成中文
解决乱码问题,jsoncpp 写入乱码解决版本
提交数据到服务器会出现一些中文乱码 现在讲处理办法简单整理 中文乱码处理
中文乱码处理问题总结,针对一些容易乱码的地方进行讲解。
而网上另外也有资料如何处理中文编码,例如转码为utf-8,存能解决乱码,取又出现问题。本资源我重新整理,用unicode完美解决中文乱码问题。用法: 1.声明实例 IniFile iniFile = new IniFile(HttpContext....
解决Lua文件反编译后汉字乱码问题。开发环境vs2013,语言c#
乱码处理文件乱码处理文件乱码处理文件乱码处理文件乱码处理文件乱码处理文件乱码处理文件乱码处理文件乱码处理文件乱码处理文件乱码处理文件乱码处理文件乱码处理文件乱码处理文件乱码处理文件乱码处理文件乱码处理...
c#控制台下的汉字输出乱码,可以通过这段程序解决
C++操作MariaDB和MySql中文乱码或无法处理中文的解决办法
配置Filter过滤器处理JSP中文乱码 参考Tomcat服务器目录webapps的examples示例 简单配置步骤: 1.在项目web.xml文件添加过滤器标记和; 2.实现过滤器代码; 3.对Tomcat服务器conf目录里的Server.xml文件配置...
jsp中文乱码的处理 页面显示 表单提交 数据库操作JSP中文乱码处理
MySQL写入中文乱码之处理character
java中最头疼的可能就是中文乱码的问题,这个可以彻底解决中文乱码的问题
Cookie实现记住密码及解决中文乱码
struts处理中文乱码问题总结struts处理中文乱码问题总结struts处理中文乱码问题总结struts处理中文乱码问题总结
中文乱码问题分析中文乱码问题分析中文乱码问题分析中文乱码问题分析中文乱码问题分析中文乱码问题分析
彻底解决JAVA读取写入 TXT中文乱码问题 源码