- 
                Notifications
    
You must be signed in to change notification settings  - Fork 20
 
JavaWeb
        kcp edited this page Oct 13, 2020 
        ·
        3 revisions
      
    目录 start
目录 end|2020-04-27 23:42|
| 对象 | 说明 | 类型 | 作用域 | 
|---|---|---|---|
| request | 请求对象 | 类型 javax.servlet.ServletRequest | 作用域 Request | 
| response | 响应对象 | 类型 javax.servlet.SrvletResponse | 作用域 Page | 
| pageContext | 页面上下文对象 | 类型 javax.servlet.jsp.PageContext | 作用域 Page | 
| session | 会话对象 | 类型 javax.servlet.http.HttpSession | 作用域 Session | 
| application | 应用程序对象 | 类型 javax.servlet.ServletContext | 作用域 Application | 
| out | 输出对象 | 类型 javax.servlet.jsp.JspWriter | 作用域 Page | 
| config | 配置对象 | 类型 javax.servlet.ServletConfig | 作用域 Page | 
| page | 页面对象 | 类型 javax.lang.Object | 作用域 Page | 
| exception | 例外对象 | 类型 javax.lang.Throwable | 作用域 page | 
| 域 | 说明 | 
|---|---|
| application | 在所有应用程序中有效 | 
| session | 在当前会话中有效 | 
| request | 在当前请求中有效 | 
| page | 在当前页面有效 | 
- MVC设计模式:
- M
- hibernarte (相应操作的SQL语句由Hibernate框架生成)
 - mybatis(SQL用户根据需要去写的)
 - JPA 和Hibernate是相同的内核,由Hibernate派生而来
 
 - C
- struts1.x
 - struts2.x
 - springmvc
 - spring 模块的整合
 
 - V: 视图层
 
 - M
 
- 
再度理解 Dao service模式的概念
- dao : 基础单笔业务的功能模块
 - service : 将单个的dao组合一起,得到复杂的业务逻辑
 - 如果要实现AOP或者规范化,dao和service分别要有接口的存在(为了多态,代理,严谨)
 
 
如何做Etag缓存
- 自定义了EtagCache注解
 - 通过拦截器判断带EtagCache注解的Controller
 - 通过Spring Data Jpa自带的乐观锁 version, 针对每个资源就可以做到EtagCache
 - 将其值放在http的header中
 - 还有另一种做法就是 自己针对内容进行hash code编码
 
- 1、JSP页面上的SQL标签以及EL标签是优先于文件头的那些JavaServlet语句运行的,所以要保证非法进入页面时重定向的问题
 - 2、如果想要获取异常来据此返回参数到页面弹窗提示,那么就要对一层层的方法调用,进行查找,所有的try catch 块 都要检查
- 因为一般我的习惯就是把异常当场就处理了,而要实现这个要求就必须将异常层层上抛!!!!
 
 
- 
3、中文乱码问题:
- 
接收
- 使用get方法,需要转换成gbk :
newString(s.getBytes("ISO-88511-1","gbk"); - post方法需要转换成UTF-8
 
 - 使用get方法,需要转换成gbk :
 - 回应 均使用UTF-8
 
 - 
接收
 - 
4、查询数据: 使用set集合,查询对象是否存在,使用contians
 - 
5、Servlet 是单例多线程的
 - 
6、eclipse中将java项目转成web项目
- 经常在eclipse中导入web项目时,出现转不了项目类型的问题,导入后就是一个java项目,有过很多次经历,今天也有同事遇到类似问题,就把这个解决方法记下来吧,免得以后再到处去搜索。
 
- 
解决步骤:
- 1、进入项目目录,可看到.project文件,打开。
 - 2、找到
<natures>...</natures>代码段。 - 3、在第2步的代码段中加入如下标签内容并保存:
 
<nature>org.eclipse.wst.common.project.facet.core.nature</nature> <nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature> <nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
- 4、在eclipse的项目上点右键,刷新项目。
 - 5、在项目上点右键,进入属性(properties)
 - 6、在左侧列表项目中点击选择“Project Facets”,在右侧选择“Dynamic Web Module”和"Java",点击OK保存即可。
 
 
 
- 
【 Algorithm 】
 - 
【 Blog 】
 - 
【 C 】
 - 
【 Database 】
 - 
【 Distributed 】
 - 
【 FrontEnd 】
- 【 FrontEnd/Frame 】
 - 【 FrontEnd/Node 】
 - Font
 - Hexo
 - JavaScript
 - LearnPS
 - ResponseCode
 - SVG
 - ViewSolution
 - extjs学习笔记
 
 - 
【 Functional 】
 - 
【 Go 】
 - 
【 Groovy 】
 - 
【 Java 】
- 【 Java/AdvancedLearning 】
- 【 JavaBasic 】
 - 【 JavaCache 】
 - 【 JavaCollection 】
 - 【 JavaConcurrency 】
 - 【 JavaMap 】
 - Annotation
 - ClassFile
 - Collection
 - Concurrency
 - Deploy
 - Exception
 - ExtendsAndInterface
 - Generics
 - IO
 - JDBC
 - JDKAndJRE
 - JMX
 - JVM
 - Java11
 - Java7
 - Java8
 - JavaNetwork
 - JavaReleaseVersion
 - JavaWeb
 - JvmPerformance
 - MQ
 - MultipleLanguage
 - Proxy
 - Reflection
 - Serialize
 - SyntaxAndType
 - Thread
 - WebPerformance
 
 - 【 Java/Android 】
 - 【 Java/Ecosystem 】
 - 【 Java/MSA 】
 - 【 Java/Spring 】
 - 【 Java/TemplateEngine 】
 - 【 Java/Test 】
 - 【 Java/Tool 】
 - 【 Java/thread 】
 - AlibabaJavaStandard
 - DesignPattern
 - HashMap解析
 - Java-NIO
 - Java虚拟机
 - Log
 - MIS
 - Quartz
 - RESTful
 - WebSocket学习笔记
 - ZooKeeper学习笔记
 - android学习笔记
 
 - 【 Java/AdvancedLearning 】
 - 
【 Kotlin 】
 - 
【 Linux 】
- 【 Linux/Alpine 】
 - 【 Linux/Arch 】
 - 【 Linux/Base 】
 - 【 Linux/Centos 】
 - 【 Linux/Container 】
 - 【 Linux/Debian 】
 - 【 Linux/Tool 】
 - JavaDevInit
 - Linux系统学习
 
 - 
【 MyBlog 】
 - 
【 Python 】
- 【 Python/Tool 】
 - Python
 - PythonConcurrent
 - PythonGUI
 - PythonGame
 - PythonNet
 - PythonOffices
 - PythonWeb
 - Python基础
 - Python核心学习
 
 - 
【 Reactive 】
 - 
【 Rust 】
 - 
【 Scala 】
 - 
【 Script 】
 - 
【 Skills 】
- 【 Skills/Application 】
 - 【 Skills/CS 】
 - 【 Skills/Cache 】
 - 【 Skills/Councurrency 】
 - 【 Skills/DevOps 】
 - 【 Skills/Document 】
 - 【 Skills/Ecology 】
 - 【 Skills/Network 】
 - 【 Skills/Search 】
 - 【 Skills/SoftwareEngineering 】
 - 【 Skills/Spider 】
 - 【 Skills/Test 】
 - 【 Skills/Vcs 】
 - 【 Skills/Work 】
 - AppManual
 - CelebrityQuotes
 - Miscellaneous
 - Platform
 - Problem
 - Protobuf
 - RegularExpression
 - SoftwareDesignEngineer
 - Website
 
 - 
【 Windows 】