mac下tomcat的配置和jdk的设置 jsp的初级知识

在mac下,jdk下载好,解压安装后,系统就自动为你配置好环境变量了

tomcat的配置,在tomcat的官网http://tomcat.apache.org/直接下载tomcat 9压缩包 随后配置到自己喜欢的路径下 

打开终端 一直cd到apache的bin目录下

随后启动tomcat 输入.startup.sh tomcat就已经启动了 在浏览器中输入localhost:8080 就可以了

关闭tomcat 在终端输入.shutdown.sh tomcat就关闭了

在eclipse中创建jsp文件

选择Dynamic Web Project 选择创建动态web网页 输入文件名JSPIstudy 

随后在WebContent文件下创建子文件夹


命名为01 随后在01文件夹下创建jsp文件hello.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
JSP表达式输出 <%="cao" %>
<%!
String str = "he";
%>
<%-- <%
//定义的变量是局部变量
String str = "hello world";
//out是内置对象 向客户端输出各种数据
out.println(str);
%>  --%>
</body>
</html>
文件形式如下 <% %> 内为jsp的内容,可以输入java的语句,这里out 是一盒内置对象,向客户端输出各种数据

在浏览器中打入localhost:8080/JSPStudy/01/hello.jsp

就可以看到hello world


jsp中的项目导出 不仅可以在eclipse中选择sever 中的tomcat来运行 也可以打包出来 放到tomcat的文件夹中运行

选中文件JSPIstudy 右键选择export 随后导出为jar包,放到tomcat目录下的webapps包下 即可在终端打开tomcat 用localhost进行访问


jsp中的注释可以用<%-- -- --%>来进行 也可以用//和 /* */来进行注释

jsp中的指令 编译指令page指令可以指定jsp文件的全局属性 可以定义page属性指定jsp的全局属性 比如使用的脚本语言的类型 导入的包等等

系统自带的会生成这些

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
自己导入的包

<%@page import="java.util.Date"%>
<%@page import="java.util.ArrayList"%>
随后便可以在jsp文件中使用Arrarlist类

 ArrayList a = new ArrayList();
a.add(1);
a.add(2);

include指令 可以包含其他的jsp 或者html文件

<div>
header
</div>

header.html的文件内容如下

<div>
footer
</div>

footer.jsp的文件内容如下

随后在include.jsp文件中,就可以包含这两个文件

file表示在同一个目录下

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>

<%@include file ="header.html"

%>
<% //cao %>
</br>
<%@include file = "footer.jsp" %>
</body>
</html>

随后访问inculde.jsp就可以访问header 和footer

forword指令 可以进行重定向

有两种形式,一种带参数,一种不带参数

不带参数

直接从Index 映射到login

<jsp:forward page="login.jsp">


<title>login</title>
</head>

随后也可以进行参数的转换 为动作指令

<jsp:forward page="login.jsp">
<jsp:param value="kevin" name="userName"/>
<jsp:param value="cao" name="password"/>
</jsp:forward>
将userName 和password进行回传

String userName = request.getParameter("userName");
String pwd = request.getParameter("password");
out.println(userName);
out.println("<br/>");
out.println(pwd);
进行取出输出

error_page指定错误处理页面 如果jsp文件出错 并且没有指定代码进行处理 就会自动调用这个进行错误处理

在handle_error中指定其为程序出现错误时的页面

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"
    isErrorPage="true"%>
 errorPage="handle_error.jsp"%

在get_error.jsp中指定下列属性

随后访问get_error.jsp就可以见到如下信息





jsp中的useBean

JavaBean是对类的一种封装 遵循相同的约定 可以被重用  并且遵循三个原则,公共的默认的构造函数 ,也就是无参构造函数,get set来访问 可序列化的 也就是继承Serlallzable接口

下面创建一个JavaBean 

在src目录下 创建报名com.hznucai.entity 随后创建类userEntity


JavaBean的代码如下

package com.hznucai.entity;

import java.io.Serializable;

public class UserEntity implements Serializable {
	private String userName;
	private String password;
	// 生成默认的构造方法

	// 生成get和set


	public UserEntity() {
		super();
	}

	public String getUserName() {
		return userName;
	}

	public void setUserName(String userName) {
		this.userName = userName;
	}

	public String getPassword() {
		return password;
	}

	public void setPassord(String passord) {
		this.password = passord;
	}




}
可以右键点击sourse来构造生成set和get方法和默认的构造函数的方法 至此 一个JavaBean的文件就创建好了

随后实现一个简单的注册功能

创建rigister.jsp文件

在其中创建一个表单 规定name为userName和password

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>录入注册信息</title>
</head>
<body>
<form action = "do_reqister.jsp" method="post">
用户名:<input type = "text" name = "userName"/>
密码: <input type = "password" name = "password"/>
<input type = "submit" value = "提交"/>
</form>
</body>
</html>

不用useBean属性 可以用request.getParameter来获取属性 并打印出来

String userName = request.getParameter("userName");
String passWord = request.getParameter("password");
out.println(userName);
out.println("<br>");
out.println(passWord); 
随后输入

就可以进行注册了

用useBean的方法 useBean中海油一个scope属性 来指定对象实例存储的范围 scope属性用于指定JavaBean实例对象所存储的域范围,其取值只能是page、request、session和application四个值中的一个,其默认值是page。

 <!--设置javaBean属性 -->
<jsp:useBean id="user" class="com.hznucai.entity.UserEntity"></jsp:useBean>
<jsp:setProperty property="userName" name="user" param="userName"/>
<jsp:setProperty property="password" name="user" name = "password"/>
id属性表示useBean的名称 class表示实际引用的javaBean类 

随后在setProperty中,property表示javaBean的属性 name表示实际引用的哪个javaBean param表示获得的表单中的参数 

随后在jsp代码中 可以用getProperty方法来获得

<jsp:getProperty property="userName" name="user"/>
<jsp:getProperty property="password" name="user"/>
这样也可以进行打印输出

整体代码如下

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>注册信息处理</title>
</head>
<body>
 <!--设置javaBean属性 -->
<jsp:useBean id="user" class="com.hznucai.entity.UserEntity"></jsp:useBean>
<jsp:setProperty property="userName" name="user" param="userName"/>
<jsp:setProperty property="password" name="user" name = "password"/>
<%
String userName = request.getParameter("userName");
String passWord = request.getParameter("password");
out.println(userName);
out.println("<br>");
out.println(passWord); 

%>
<jsp:getProperty property="userName" name="user"/>
<jsp:getProperty property="password" name="user"/>
</body>
</html>

大致如下

动态导入的include指令

<jsp:include page="header.html"></jsp:include>
<jsp:include page = "body.jsp">
<jsp:param value="red" name="bgColor"/></jsp:include>





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值