摘要:
因为自己对于struts2也不是很了解,这章将是struts2的最后一章了。那么这一章主要介绍的是拦截器以及怎么样来自定义一个拦截器。
struts2的拦截器位于struts2-core(核心包)->struts-default.xml->interceptor-stack 标签->interce... 阅读原文
2017-10-16 10:58:05 阅读(744) 评论(0)
摘要:
如果查询的条件有多个的时候,mybatis有三种传入方式:
1.通过注解传入
例如:
public interface Mapper(){
public User login(@Param("username")String username,@Param("password") String passw... 阅读原文
2017-10-16 09:13:01 阅读(812) 评论(0)
摘要:
一、BIO
Blocking IO(即阻塞IO);
1. 特点:
a) Socket服务端在监听过程中每次accept到一个客户端的Socket连接,就要处理这个请求,而此时其他连接过来的客户端只能阻塞等待;
b) 多线程处理多个连接,每个线程拥有自己的栈空间并且占用一些 CPU 时间。每个线程... 阅读原文
2017-10-16 08:26:04 阅读(724) 评论(0)
摘要:
struts的数据封装共有3中方式,属性封装,模型驱动封装和表达式封装,其中表达式封装为常用
一:属性封装:
属性封装其实就是自己定义变量,注意变量名要和表单的name属性名一致,然后生成get和set的方法就可以了,使用的话直接自己用属性名就可以了。
二:模型驱动封装:
01):创建实体类(属性名必须和表单的nam... 阅读原文
2017-10-16 07:19:02 阅读(775) 评论(0)
摘要:
什么是值栈?struts2里面本身提供的一种存储机制,类似于域对象,值栈,可以存值和取值.,特点:先进后出。如果将它当做一个容器的话,而这个容器有两个元素,那么最上面的元素叫做栈顶元素,也就是所说的压栈。
action和servlet区别:每次访问的action的时候,都会创建一个新的action对象,而servle... 阅读原文
2017-10-16 06:00:05 阅读(780) 评论(0)
摘要:
这一章我们一样来获取数据,看看与上一章有什么不同吧。数据封装也有三种方式。下面我们来一一介绍。
第一种:属性封装。
类就用LoginAction吧。里面有两属性,name,pwd.给这两个属性写上getter和setter.
页面就是用上章的login.jsp,只需将提交地址改了,struts.xml配置配好,... 阅读原文
2017-10-16 00:00:04 阅读(750) 评论(0)
摘要:
一:activeMq介绍
ActiveMQ是一种开源的,实现了JMS1.1规范的,面向消息(MOM)的中间件,为应用程序提供高效的、可扩展的、稳定的和安全的企业级消息通信,下载地址是:http://activemq.apache.org/download.html,下载后启动activemq.bat就可以,a... 阅读原文
2017-10-15 22:26:05 阅读(775) 评论(0)
摘要:
01:导入Jar包
下载地址:http://struts.apache.org/
将下好的jar包放导WEB-INF下的lib文件夹下
02:创建Action:com.action.LoginAction(2.0版本以上无须加Action)
继承ActionSupport(ActionSupport类是一个工具类,它... 阅读原文
2017-10-15 22:20:03 阅读(764) 评论(0)
摘要:
在上一章中,我们已经搭建好了struts2的一个开发环境,那么这一章就来做一个简单的登录功能,利用action来获取表单数据。以及介绍和使用struts2里面一个重要的东西-通配符。
第一步,在WebContent下面新建一个login.jsp的页面,里面使用form表单实现一个简单的登录页面。
第二步:打开上一章... 阅读原文
2017-10-15 21:22:04 阅读(797) 评论(0)
摘要:
多线程的目的
为什么要使用多线程?可以简单的分两个方面来说:
在多个cpu核心下,多线程的好处是显而易见的,不然多个cpu核心只跑一个线程其他的核心就都浪费了;
即便不考虑多核心,在单核下,多线程也是有意义的,因为在一些操作,比如IO操作阻塞的时候,是不需要cpu参与的,这时候cpu就可以另开一个线程去做别的事情,... 阅读原文
2017-10-15 20:12:02 阅读(754) 评论(0)