struts2自定义标签中  使用in  判断当前值 是否在某个集合中

该属性一方面可以获取前端页面传递过来的参数   另外一个作用就是在数据回显时把用户已经拥有的权限id存入该集合中   放在栈顶

OA项目总结3

例如修改权限之前需要准备数据   这些数据保存在栈顶    在页面中可以使用ognl表达式来获取

OA项目总结3

页面

OA项目总结3

#privilegeList也保存在栈顶(循环的时候 把每个权限对象取出  放入栈顶)

OA项目总结3

这里需要做的功能就是 循环遍历栈顶的权限数据  然后显示他们   最后把用户已经选择的权限默认选中

in 前面的id值:每次循环遍历的权限对象中的id(每次遍历出的对象都是放在栈顶的)

in后面的privilegeIds:栈顶中的数据  表示用户已经选择的权限id 

in的作用:判断当前id值 是否存在于集合privilegeIds中  如果存在  那么当前的复选框就被选中

OA项目总结3

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

 OA项目总结3

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

让实体类实现序列化接口的好处:用户登录之后 ,重启服务器,此时可以把用户登录的信息保存在本地硬盘上  服务器启动成功之后  会从硬盘读取数据  实现用户无需登录的效果

用户登录成功:

OA项目总结3

OA项目总结3

这个文件夹中什么也没有,此时用户是登录状态,用户信息也保存在session中  即存在于内存中:

此时关闭服务器:

OA项目总结3

在该项目的缓存目录中多了一个文件  这个文件就是当服务器重新启动的时候,把此时内容中的数据序列化输出到硬盘中   当再次启动的时候 就会从该文件中读取内容到内存中和session中  然后删除文件

OA项目总结3

虽然此时文件已经生成,但是因为我们的实体对象是没有实现序列化接口的  所以不能把数据保存在磁盘上 ,这个文件中的没有任何的内容。

接下来把实体类都实现序列化(如果保存的对象  和其他对象存在关联 那么关联的实体类也要序列化)

OA项目总结3

 

 OA项目总结3

 

 OA项目总结3

 

 OA项目总结3

这个接口实现之后,不用重写或者实现任何的方法  只是代表实现者拥有序列化的能力   这个接口中什么都没有  就是一个空的接口

OA项目总结3

接下来我们登录用户 

OA项目总结3

关闭服务器

OA项目总结3

观察文件夹  这次这个文件大小为5k 说明里边是存在内容的

OA项目总结3

开启服务器:  读取文件中的数据  然后删除了文件  

OA项目总结3

刷新页面  依然登录状态

OA项目总结3

 

相关文章:

  • 2022-12-23
  • 2021-07-15
  • 2022-12-23
  • 2022-02-13
  • 2021-12-25
  • 2021-10-22
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-03-05
  • 2021-11-01
  • 2022-02-21
  • 2022-12-23
  • 2021-12-25
  • 2022-12-23
相关资源
相似解决方案