wbe服务器
调试中文乱码在eclipse
jsp 中文乱码
wo 中文乱码
常用的Wbe服务器
Apache:tomcat 免费的
Oracle:webloqic 不免费适合电商类型的开发
IBM:websphere 不免费适合电商类型的开发
Nginx 并发能力强,比如说百度,新浪
1.在windows系统下启动tomcat是在bin的文件夹里找到startup.bat 关闭shutdown.bat
在linux系统下启动tomcat在bin的文件夹里找到startup.sh关闭:shudown.sh
2.中文乱码什么的在conf里面的server.xml.还有端口号
3.写的java文件都部署在webapps
4.下载地址
http://tomcat.apache.org/download-70.cgi
5.操作Tomcat注意事项
1.startup.bat 启动后,不许关闭,一定是最小化
2.启动时,窗口一闪而过?
环境变量新建:JAVA_HOME:到jdk bin前面
在启动bin里面在配置
SET JAVA_HOME=C:\Program Files\Java\jdk1.8.0_74
SET CATALINA_HOME=D:\Program Files\apache-tomcat-7.0.90
3.http://localhost:8080/ 访问自己的注意
jdbc连接数据库
1.配置文件–属性.properties
Jsp连接Web http://localhost:8080
1.page指令:通过属性定义了JSP的特性,实现与JSP容器的通信
<%@ page language=“java” import=“java.util.*” pageEncoding=“UTF-8”%>
2.out对象:out对象是JSP内置对象(就是给你包装好的,直接用不在用new了)
out输出的方法:pritin
语法:<%out.pritin("");%>
3.JSP执行顺序f’Fkrkkk
先翻译java文件–在编译成class文件–在执行
4.全局变量语法:
加感叹号是全局的意思
<%! int=9%>
5.请求对象request:方法
request.getparameter(“name”)
request.setCharacterEncoding(“utf-8”);
判断复选框的:
String[] hobbys=request.getParameterValues(“hobby”);
if(hobbys!=null && hobbys.length!=0){
//用户选着了爱好,将爱号输出
for(String hobby:hobbys){
out.println(hobby+"
");
}
}else{
out.println(“您没有选着爱好!”);
}
6.表单验证的提交
中文乱码:post和get
post:在判断form表单提交的时候添加
request.setCharacterEncoding(“utf-8”)
get.:乱码
或治本:URIEcoding="utf-8" 这句话加在编码配置端口号后面 Server里面。
7.重定向跳转:请求跟转发:
不需要带数据:
response.sendRedirect(“welcome.jsp”);
需要带数据:
request.getRequestDispatcher(“welcome.jsp”).forward(request, response);
8。session:setAttrubyte()作用域是一次会话,如果不退出多次请求都认为是一次请求
是储存到服务器里面的。
1.seession:清楚会话的清楚和过期
在注册的时候设置
方法一:session.setMaxInactiveInterval(5);
方法二:写在配置文件里
30
String getId() 获取sessionid
void setMaxInactiveInterval(int interval) 设定session的非活动时间
int getMaxInactiveInterval() 获取session的有效非活动时间(以秒为单位)
void invalidate() 设置session对象失效
void setAttribute(String key, Object value) 以key/value的形式保存对象值
Object getAttribute(String key) 通过key获取对象值
void removeAttribute(String key) 从session中删除指定名称(key)所对应的对象
2.cookie:跟踪用户的整个会话
conkie记录在客户端的信息。
创建cookie对象 Cookie newCookie = new Cookie(String key, String value);
写入cookie
response.addCookie(newCookie);
读取cookie Cookie[] cookies = request.getCookies();
3.application实现计数器
void setAttribute(String key,
Object value) 以key/value的形式保存对象值
Object getAttribute(String key) 通过key获取对象值
String getRealPath(String path) 返回相对路径的真实路径
1数据源DataSource
1.数据源用来连接数据库,获得连接(Connection)对象
2.连接池用来管理连接(Connection)对象
3.在程序中使用JNDI获得数据源
JNDI–》DataSource–>Connetion–>连接池
配置tomcak配置文件
//初始化上下文
Context cxt = new InitialContext();
//获取与逻辑名称相关的数据源对象
DataSource ds =(DataSource) cxt.lookup("java:comp/env/jdbc/news");
//通过数据源获得数据连接
conn=ds.getConnection();
2.javaBean封装数据
1.就是一个JAVA类
2.封装业务逻辑
3.封装数据
jsp动作标签:
useBen 创建new用的 <jsp:useBen id="" class="">
inciude 把指定的文件插入正在生成的页面中
<jsp:include page=""> 动态包含:先处理在包含
<%@include file=“url”%> 静态包含:先包含在处理(注意这里面没有JSP)
forward
<jsp:forward page=“url”> 跳转页面
EL表达式
&&(或and) 逻辑与 如果A为true,B为false,则KaTeX parse error: Expected '}', got '&' at position 5: { A &̲& B } (或{ A and B } ) false
||(或or) 逻辑或 如果A为true,B为false,则${ A || B} (或
A
o
r
B
)
t
r
u
e
!
(
或
n
o
t
)
逻
辑
非
如
果
A
为
t
r
u
e
,
则
{ A or B } ) true ! (或not) 逻辑非 如果A为true,则
AorB)true!(或not)逻辑非如果A为true,则{ ! A } ( 或${ not A } ) false
==(或eq) 等于
23
=
=
5
或
{23==5}或
23==5或{23 eq 5}
"
a
"
=
=
"
a
"
或
{"a" =="a"}或
"a"=="a"或{“a” eq “a”} false
true
!=(或ne) 不等于
23
!
=
5
或
{23!=5}或
23!=5或{23 ne 5} true
<(或lt) 小于
23
<
5
或
{23<5}或
23<5或{23 lt 5} false
(或gt) 大于 23 > 5 或 {23>5}或 23>5或{23 gt 5} true
<=(或le) 小于等于 23 < = 5 或 {23<=5}或 23<=5或{23 le 5} false
=(或ge) 大于等于 23 > = 5 或 {23>=5}或 23>=5或{23 ge 5} ture
若变量 a为null,或长度为零的String,或size为零的集合
则
e
m
p
t
y
a
返
回
的
结
果
为
t
r
u
e
{ empty a }返回的结果为true
emptya返回的结果为true{ not empty a }或${ ! empty a }返回的结果为false
pageScope 与page作用域相关联的Map对象
requestScope 与request作用域相关联的Map对象
sessionScope 与session作用域相关联的Map对象
applicationScope 与application作用域相关联的Map对象
param 按照请求参数名称返回单一值的Map对象
paramValues 按照请求参数名称返回String数组的Map对象
pageContext 提供对页面信息和JSP内置对象的访问
jsp表达式
1.将value值存储到范围为scope的变量variable中 <c:set var=“variable” value=“value” scope=“scope” />2.将value值设置到对象的属性中 <c:set target=“target” property=“property” value=“value” />
3.choose:实现if - else if - else语句的功能
<c:choose>
c:when test="condition1">
内容1 </c:when>
<c:when test="condition2">
内容2
</c:when> ……
<c:otherwise>
内容n
</c:otherwise> </c:choose >4.循环:
<c:forEach items="collection" var="varName" begin="start"
end="end" step="stepSize" varStatus="status" >1.items="collection" items指定要遍
历的集合对象2.var=“varName” var指定当前成员的引用
3.begin=“start” begin指定从集合的
第几位开始4.end=“end” end指定迭代到
集合的第几位结束5.step=“stepSize” step指定循环的步长6.varStatus=“status” varStatus属性用于存放var引用的成员的相关信息,如索引等
5.1主表单,引用。主要是循环判断
<%@ taglib uri=“http://java.sun.com/jsp/jstl/core” prefix=“c” %>
2。时间格式的扎包
<%@ taglib uri=“http://java.sun.com/jsp/jstl/fmt” prefix=“fmt” %>
<fmt:formatDate value="${now}" pattern=“yyyy年MM月dd日”/>