汇总 SpringMVC 传参给到 JSP ,JSP 使用 JSTL
表达式取值来显示的各种方式。
汇总 SpringMVC 传参给到 JSP ,JSP 使用 JSTL
表达式取值来显示的各种方式。
一个 Web
项目的Socket
需用到多线程,每一个连接创建一条线程来处理数据。
在多线程中需要用到 Spring
中的 Bean
,如果直接用 Spring 注入是会报NullPointerException
错误。原因是线程类无法提前委托给Spring
管理,是在使用中创建的。
什么是线程安全?什么是非线程安全,该如何定义和理解?什么场景会出现非线程安全?这几个问题在脑子里有个概念和轮廓,但要描述清楚始终不得,不全,非一两个例子代码。
记录我在工作和生活中的一些方法实践总结。工作生活中的一些实践方法使用多了,多少有不同的体会,也会表现出一些规律,抓住规律脉络,提炼总结出一些普适结论。
学习软件设计模式,需要了解使用设计模式的目的,23种设计模式是对设计模式使用场景进行分类再抽象的方法论,遵循了基本的设计原则。
学习软件设计模式,还需要了解其设计的原则,需要了解软件的可维护性和可复用性。
另:设计是有限度的,不能无限地考虑未来的变更情况,否则会陷入设计的泥潭中难以自拔。
设计模式(一):单例模式(Singleton Pattern)
单例模式:自己创建自己的唯一实例,在内存中只有这一个对象,不允许其它类自由创建该类的对象,给所有其它类提供这唯一实例。
Spring MVC默认单例多线程的,使用ThreadLocal
来切换线程之前的参数,Spring 把每个线程可能存在线程安全问题的参数值放进了 ThreadLocal,实现不同线程下的数据相互隔离。用ThreadLocal来保证线程安全,ThreadLoacal 的 key 就是当前线程的 Thread 实例。
Spring推荐配置就是单例,不用每次都 new , 高并发下能极大的节省资源,提高服务抗压能力。Spring IOC的 Bean 管理器是绝对的线程安全。
Sprinv MVC Controller也可以通过注解@Scope("prototype")
配置为多例模式。
HTTP(HyperText Transfer Protocol):超文本传输协议,所有的WWW文件都必须遵守这个标准。现在常用的版本是HTTP 1.1。
HTTP是一个客户端请求和浏览器应签的标准(TCP),浏览器和服务器通信的数据格式,默认端口:80
;HTTPS默认端口:443。
学习http协议,实际上就是要学习http规定的求的数据的格式以及响应的数据的格式。浏览器与服务器一问一答的规则。
JavaWeb 开发遇到各种中文乱码,现统一整理出相应的解决方法。
前提要求是项目工程统一使用UTF-8
编码。