目录 1、系统设计 2、数据库设计 3、系统管理 4、用户管理 5、名片管理 ---- 本篇博文将分享一款基于Struts2框架的名片管理系统,JSP引擎为Tomcat9.0,数据库采用的是MySQL5.5...希望通过本篇的学习,朋友们不仅能掌握Struts 2应用开发的流程、方法和技术,还能够熟悉名片管理的业务需求、设计以及实现。...,可以在个人中心查看自己的基本信息和修改密码。...包文件和配置文件管理 本系统的包文件和配置文件层次结构如下图所示: ?...基本信息页面 5、名片管理 与系统相关的JSP页面、CSS和图片位于WebRoot目录下。在第3节中,已经介绍了系统的数据库操作,所以本节只是介绍JSP页面和Action的实现。
原文:关于SpringMVC和Struts2的区别 SpringMVC与Struts2对比 01_拦截级别 Struts2是类级别的拦截, 一个类对应一个request上下文,SpringMVC是方法级别的拦截...05_入口的不同 SpringMVC的入口是servlet,而Struts2是filter(这里要指出,filter和servlet是不同的。...从这个项目的管理和安全上也比Struts2高(当然Struts2也可以通过不同的目录结构和相关配置做到SpringMVC一样的效果,但是需要xml配置的地方不少)。...09_设计思想 Struts2更加符合OOP的编程思想, SpringMVC就比较谨慎,在servlet上扩展。 10_开发效率和性能 SpringMVC开发效率和性能高于Struts2。...其他资源 SpringMVC与Struts2的对比 SpringMVC 和Struts2的区别 SpringMVC与Struts2区别与比较总结 第一个存在一些相关结构图,可以考虑参考看看。
Struts2的下载 使用Struts2框架,进行Web开发,或者运行Struts2的程序,必须,先下载并安装好Struts2 从Struts2的官网中进行下载 http://struts.apache.org...Struts2的示例应用、空示例应用、核心库、源代码和文档等 Example Applications 仅下载Struts2的示例应用 这些,示例应用对于学习Struts2有很多的帮助,下载Struts2...的完整版时,已经包含了该选项中的全部应用 Essential Dependencies Only 仅下载Struts2的核心库 下载Struts2的完整版时,已经包含该选项下的全部内容 Documentation... 仅下载Struts2的相关文档 包含Struts2的使用文档、参考手册和API文档等,下载Struts2的完整版时,已经包含该选项下的全部内容 Source 下载Struts2的全部源代码...在Struts2的版本库中,进行下载 https://archive.apache.org/dist/struts/ Struts2安装 Struts2安装非常简单 将Struts2目录中的
在之前的学习中,我们知道struts2可以将表单中的数据自动设置到处理类的属性上,还有类型转换等其他功能。那么struts2是怎样做这件事情的呢?...struts2完成这些功能是通过拦截器来完成的,并且在这个过程中数据进行迁移的动作,数据从request对象中迁移到了处理类上。完成数据迁移是由ActionContext来完成的。...通过以上案例可以知道,ThreadLocal中存放的数据是线程安全的。ThreadLocal是一种典型以空间换时间的办法来做到线程安全。...并且ActionContext在struts2执行过程中负责数据的存储。 ?...ActionContext机制是将ServletAPI中的数据进行了解耦,在Action执行过程中,struts2都从ActionContext中获取数据。那么实现线程安全,同时也降低了执行效率。
在struts2中action的分类有:继承 ActionSupport 实现 Action,模型驱动(ModelDriven)的 Action,多方法的 Action三种方式。...-- 参数名和action中的属性名一样 --> 密 码: <input type="password...Action Struts2 的 Action 属于 MVC 模型层, Action 中的方法代表业务逻辑, Action 中的属性代表请求中的参数,当页面请求参数较多的时候,把过多的参数对象的属性定义在...模型驱动的 Action 要求 Action 实现ModelDriven 接口,假如登录页面需要传输参数 username 和 userpass,我们把这 2 个参数封装在一个数据的 JavaBean...-- 参数名和action中的属性名一样 --> 密 码: <input type="password
和最重要的getValue与findValue方法,以及peek、pop等栈所特有的方法。...类的setValue和findValue方法可以设置和获得Action对象的属性值。...传送带会带着Action对象经过若干个拦截器,在每一拦截器中都可以通过ValueStack对象设置和获得Action对象中的属性值。...Struts2框架把我们的ActionContext设置为OGNL 的上下文环境,凡是此环境中的值我们都应该通过#key的方式来进行访问,所以request,session等需要加前缀,又因为Struts2...)和ValueStack对象的context对象共同引用的一个Map对象中,所以我们既可以通过#key也可以直接通过key来进行访问。
Struts1和Struts2的区别和对比: Action 类: • Struts1要求Action类继承一个抽象基类。...Struts1的一个普遍问题是使用抽象类编程而不是接口,而struts2的Action是接口。...• Struts 2 Action类可以实现一个Action接口,也可实现其他接口,使可选和定制的服务成为可能。Struts2提供一个ActionSupport基类去 实现 常用的接口。...Action接口不是必须的,任何有execute标识的POJO对象都可以用作Struts2的Action对象。...如果需要,Struts2 Action仍然可以访问初始的request和response。
1.Struts2的拦截器(******) 1.1什么是拦截器 l Interceptor:拦截器,起到拦截Action的作用。 n Filter:过滤器,过滤从客户端向服务器发送的请求。...n Interceptor:拦截器,拦截是客户端对Action的访问。更细粒度化的拦截。(拦截Action中的具体的方法)。 l Struts2框架核心的功能都是依赖拦截器实现。...1.2Struts2的执行流程 客户端向服务器发送一个Action的请求,执行核心过滤器(doFilter)方法。...(),在代理中执行的execute方法中调用ActionInvocation的invoke方法。...在这个方法内部递归执行一组拦截器(完成部分功能),如果没有下一个拦截器,就会执行目标Action,根据Action的返回的结果进行页面跳转。
这篇文章就Hibernate和Struts2整合中的相关问题进行详细说明,但是不对整合的过程进行累述。...文章对操作的过程叙述很详细,此外,在DZone上也有类似的文章: Struts2 Hibernate Integration Tutorial (中文翻译版) Struts2 CRDU Tutorial...(中文翻译版) DZone上面这篇文章和上面的文章内容差不多,也是采用了Full Hibernate Plugin插件Hibernate和Struts2的集成,将Hibernate的Session和Trasaction...总的来说,集成的方法就两种: 方法一:在Struts2中没有官方的用来和Hibernate框架集成的插件。但是我们可以采用如下的步骤进行: 1....但是有一些不好的地方就是你必须没有都要手动创建Session和手动提交。最后我用第一种方案实验成功。 希望说的不对的地方,请指出,初次使用Hibernate和Struts2。
有时我们需要在Action里取得我个要转跳的页面 看一下我们的struts.xml ${value} 很简单只是把result里用${value}取代了具体和页面...,那看一下我们的 action是怎么写的 package com.pengli.struts.parampack; import com.opensymphony.xwork2.ActionSupport...type=a 正常页面 赋一个别的值 2.带参数的跳转 我们知道redirect形式的转跳是共享值栈的,我们上边说的是&{value}取的是一个整体页面,我们也可以用它来保存和提取参数 这里我们是基于1...v=${type}取v的值时要这么取 This is my JSP page.
Struts2的配置和一个简单的例子 笔记仓库:https://github.com/nnngu/LearningNotes ---- 简介 这篇文章主要讲如何在 IntelliJ IDEA 中使用 Struts2...,文章使用的 Struts2 的版本是2.5.14.1,与其他的版本有一点差别,在文章里已经说明。...Struts2 的核心配置文件为struts.xml ?...成功配置好基本的struts2 环境 Hello nnngu!...控制台输出 Action 的打印内容 ? 到此,Struts2 就配置完成了。 Struts2 官方文档:http://struts.apache.org/getting-started/
配置启用基于SSL/TLS的LDAP(LDAPS) 目录 安装证书服务ADCS 配置ADCS 证书配置 默认情况下,LDAP 通信未加密。...这使得恶意用户能够使用网络监控软件查看传输中的数据包。这就是许多企业安全策略通常要求组织加密所有 LDAP 通信的原因。...为了减少这种形式的数据泄露,微软提供了一个选项:您可以启用通过安全套接字层 (SSL)/传输层安全性 (TLS) 的 LDAP,也称为 LDAPS。利用 LDAPS,您可以提高整个网络的安全性。...安装证书服务ADCS 安装Active Directory证书服务 勾选第一个证书颁发机构 然后一直下一步,直到安装完成即可 配置ADCS 选择证书颁发机构 选择企业 选择根 创建新的私钥...至此,已经完成了LDAPS的配置了。 可以使用ldp.exe来验证,如下:
由于mysql的主从复制是明文传送的,但如果在生产环境中跨网络我们使用的主从复制还是明文传送的话,就保证不了数据的安全性,为了解决这一问题,我们需要加密进行传送,也就是基于SSL的加密方法进行传输数据...——创建新的 SSL 文件 ?...重启服务 #systemctl restart mysqld 查看主mysql 的状态 ? 注:要记住上图所显示的 file 和 position 的值,配置从服务器要用到。...注:server_id要唯一,不能和其他 mysql 主机的重复 (2)返回主mysql(master),把主mysql 生成的证书给了从服务器 ?...测试同步成功,以上基于ssl安全连接的主从复制搭建完成。
为了便于更好的认识和理解SSL协议,这里着重介绍SSL协议的握手流程。...服务器回复 ServerHello 消息,包含基于客户端 ClientHello 消息所选择的TLS协议版本,随机数、密码算法列表及压缩方法。...如果服务器要求客户端的身份认证(在握手过程中为可选),客户端可以建立一个随机数然后对其进行数据签名,将这个含有签名的随机数和客户端自己的证书以及加密过的“预主密码”一起传给服务器。 ...服务器和客户端用相同的主密码即“通话密码”,一个对称密钥用于SSL协议的安全数据通讯的加解密通讯。同时在SSL通讯过程中还要完成数据通讯的完整性,防止数据通讯中的任何变化。 ...单向认证vs双向认证: 上面所述的是 双向认证SSL 协议的具体通讯过程,这种情况要求服务器和客户端双方都有证书。
作者 Taskiller 本文通过演示在RDP会话期间劫持的按键发送信息,向读者演示了为什么用户忽略那些基于SSL的RDP连接的证书警告可能导致中间人(MiTM)攻击,并总结了一些关于如何避免成为这种攻击的受害者的建议...经常被习惯性忽视的SSL警告 攻击简介 在较高的层面,攻击与其它的SSL中间人攻击类似: 1....一旦连接被协商使用SSL,我们的工具就会用其自己(不可信的)SSL证书与RDP客户端协商一次SSL连接。这样就使欺骗工具有机会访问RDP客户端发送的信息明文。 4....该工具也需要与正常的RDP服务器创建SSL连接,将RDP客户端的数据发送到该服务器。 这种攻击的唯一缺点是在创建所需的SSL连接之前,我们的欺骗工具必须通过RDP协议与客户端有一个简短的交互。...注意我们无法知道字符是大写的还是小写的,需要根据CAPSLock键和SHIFT键的状态的状态确定。 话不多说,直接上例子。
它使用相同的表达式去存取对象的属性。 OGNL:对象图导航语言,比EL表达式强大很多倍的语言。El从域对象中获取数据,OGNL调用对象的方法获取Struts2值栈的数据。...1.1.2为什么学习OGNL OGNL(Object-Graph Navigation Language),可以方便地操作对象属性的开源表达式语言,使页面更简洁; 支持运算符(如+-*/),比普通的标志具有更高的自由度和更强的功能...; Struts 2默认的表达式语言是OGNL,原因是它相对其它表达式语言具有下面几大优势: 支持对象方法调用,如xxx.doSomeSpecial(); 支持类静态的方法调用和值访问,表达式的格式为@...ValueStack是Struts2的一个接口,字面意义为值栈,OgnlValueStack是 ValueStack的实现类,客 户端发起一个请求,struts2架构会创建一个action实例同时创建一个...OgnlValueStack值栈实例, OgnlValueStack贯穿整个Action的生命周期,struts2中使用OGNL将请求Action的参数封装为对象存储到值栈中,并通过OGNL表达式读取值栈中的对象属性值
利用gns3配置了基于cisco asa的ssl链接测试,cloud-1链接本地网络,测试通过 1、配置目标:便于移动办公用户接入公司内部网络,通过内部网络访问ecs服务器 2、材料:gns3、asa、...anyconnect-win、c7200、pc 3、常规网络结构如下: image.png 说明: 1、r1路由器为边界路由器:主要配置为接入互联网和配置防火墙outside的地址映射 2、asa负责ssl...的请求终结,提供inside端的nat功能 3、fortGate不在本次实验范围之内 配置: 主要是asa的接入配置: ASA Version 9.9(2) !...range 172.16.1.10 172.16.1.20 description ssl user address object network NETWORK_OBJ_172.17.1.0_27...trust-point ASDM_Launcher_Access_TrustPoint_0 ssl trust-point ASDM_Launcher_Access_TrustPoint_0 outside
重点 SSL握手 发送已加密的HTTP报文之前,客户端和服务器要进行一次SSL握手,这个握手过程中,他们完成: 客户端发送列出客户端密码能力的客户端信息,比如SSL的版本,客户端支持的密钥对和客户端支持的...如果证书不是由权威结构颁发(比如12306),证书包含的域名和实际域名不一致或者证书已经过期,那么浏览器会警告用户,由用户决定是否继续访问。...编码改变通知,表示之后所有的信息都将会使用双方商定的加密方法和密钥发送 3....服务器最后响应 服务器收到客户端的随机数之后,使用私钥将其解密,这时,服务器也拥有了n1,n2,n3这三个随机数,服务器便可以生成和客户端一致的对话密钥。然后向客户端发送最后的响应。...编码改变通知,表示随后的信息都将用双方商定的加密方法和密钥发送 2. 服务器握手结束通知,表示服务器端的握手阶段已经结束 到了这里,客户端和服务器就可以使用对话密钥加密之后所有的通信过程。
证书是用于SSL安全通信信道鉴权,它可以防止中间人攻击。...机构签发的证书subject和issuer项目名字不一样,而自签的证书subject和issuer是同一个项目。.../ssl-brands.aspx)。...免费签发证书都是这个类型的,只是提供了对数据的加密,但是对提供证书的个人和机构的身份不做验证 组织鉴权:OV(Organization Validation)证书,OV SSL,对申请者做严格的身份审核验证...小型网站,在所有厂家中平衡性高的是Symantec。Comodo像是这几家的混合体。 1.5、免费和收费证书的区别 收费的和免费的签发证书有什么区别呢?
ssl证书是根据域名来签发的,申请ssl证书首先肯定要提供域名,而域名是解析到ip地址上的,那么究竟ssl证书是和域名绑定的还是和ip地址绑定的呢? ...以前有人听说生成证书时可以用IP地址,认为如果没有域名也可以绑定IP,两者有一个就可以申请,其实用ip地址绑定ssl证书时是会报错的,ssl证书是不能直接和ip地址绑定的。 ...一个ssl证书是可以绑定多个域名的。这样一来就可以避免购买多个ssl证书的费用了。...通配型ssl证书比较适合有多个子域名的企业,部署了通配型ssl证书之后,可支持同一顶级域名下的所有子域名,避免有些企业因业务发展需要每新增一个子域名就要重新申请一张ssl证书的麻烦。 ...所以当用户拥有多个域名或者多个子域名的网站,并希望通过一个ssl证书来保护所有域名,那么多域名型ssl证书和通配符型ssl证书是最佳的选择了,因为多域名和通配符ssl证书既能保护多个域名网站,同时也能保护多个子域名网站
领取专属 10元无门槛券
手把手带您无忧上云