源代码

一、已知有一个建好的jsp项目,我如何导入到MyEclipse中?

右击Package Explorer-->import-->General--> Existing Projects into Workspace。

该项目中MySQL端口:3306 密码:wjd Tomcat:8080

二、为何要同时使用Dreamweaver与MyEclipse?

同时使用Dreamweaver与MyEclipse是为了方便网站建设,Dreamweaver用来布局页面,而MyEclipse主要负责后台与前台中jsp的编码。在Dreamweaver中建立站点,把站点地址设置成MyEclipse的工程目录。

当在Dreamweaver中修改页面内容后,在MyEclipse中刷新整个项目;当在MyEclipse中修改页面内容后,在Dreamweaver中会出现“是否加载外部修改”,选择“是”,则保证了两边编辑同步。

三、已知一个sql文件,如何导入MySQL中?

利用Navicat软件实现MySQL的界面化。打开Navicat新建连接,然后新建一个数据库,然后点击工具-->console-->把sql类型文件中的内容复制到console编辑栏目中,点击回车,sql导入成功。

四、中文乱码问题

1、在MyEclipse中设置JSP页面编码步骤如下:

依次点击windows-> Preferences-> MyEclipse-> Files&Editors-> JSP-> encoding:设置为ISO10646/Unicode(UTF-8)。

2、在JSP页面中:

<%@page contentType="text/html;charset=字符编码" pageEncoding="字符编码"%>



保存JSP文件时的编码选项必须与jsp页面中的pageEncoding属性中配置的编码一致(或者在没有pageEncoding属性时与 contentType属性中配置的编码一致,两者的优先级是:pageEncoding>contentType),才不会出现乱码。

3、MySQL中也需要设置编码为utf-8。

4、提交表单时在doPost函数中添加request.setCharacterParameter("utf-8"); 语句。

五、比较alert("msg")、 confirm("msg")、 prompt("msg")

警告框:window.alert(str)或alert(str)

确认框:answer = window.confirm(str)或answer = confirm(str)

提示框:returnStr = window.prompt(targetQuestion,defaultString)

或prompt(targetQuestion,defaultString)

alert()和confirm()的最大区别是alert()没有返回值,confirm()的返回值有两种,一个是return false,一个是return true。当confirm()的对话框跳出时,点击确认,返回值就是true,点击取消,返回的是false。

六、新建JSP页面

新建JSP页面时,选择JSP(Basic templates)。

jsp页面的静态部分,如HTML、CSS标记等,用来完成页面布局和显示样式;jsp页面的动态部分,如脚本程序、jsp标签等,用来完成数据处理。

JSP声明举例如下:

<%! int number = 0;

synchronized void count() {number++;}

%> //此段代码声明了一个变量number和一个方法count,它们可以在整个jsp页面的任何位置上使用

<% count(); %>

你是第<%=number%>个访问本站的客户



JSP内建对

象有:

1、out:传送信息到客户端的浏览器

eg1:out.println("

Hello,JSP

");

eg2:out.println(i) <=> <%=i%>

2、request:包装客户端的请求信息;

3、response:响应客户端的请求;

4、session:客户端请求的一次会话。会话从客户端连接到服务器开始,直到与服务器断开连接为止,期间都可以访问session对象的属性和方法。

七、request对象、response对象

request对象 : 客户端的请求信息被封装在request对象中,通过它才能了解到客户的需求,然后做出响应。它是HttpServletRequest类的实例。

response对象 : response对象包含了响应客户请求的有关信息,但在JSP中很少直接用到它。它是HttpServletResponse类的实例。

八、比较page、request、session、application的使用范围

在一个页面范围内:page

在一次服务器请求范围内:request

在一次会话范围内:session

在一个应用服务器范围内:application

九、在JSP环境中配置使用FCKeditor

使用在线编辑器必不可少下述语句:

<%@ page language = "java" import = "com.fredck.FCKeditor.*">

....

<%

FCKeditor oFCKeditor;

oFCKeditor = new FCKeditor(request,"EditorDefault");

oFCKeditor.setBasePath(request,getContextPath()+"/fckeditor/");

oFCKeditor .setVaule(" ");

out.println(oFCKeditor .create());

%>

十、MVC模式

当引入servlet后,由servlet完成控制的功能,同时jsp单纯地完成页面展示功能,这是MVC模式(Model-View-Controller:模型-视图-控制器)。

采用jsp+javaBean+servlet模式设计:

1、一个index.jsp页面。例如用于显示留言簿内容,有一个表单用于提交留言簿内容;

2、一个servlet文件Operate.java。该文件接收表单提交的数据,一般进行三种处理:返回index.jsp所有留言信息;删除留言信息;插入留言信息。

3、一个封装了数据库操作的类DBOperate.java。该类的设计采用了singleton设计模式。

十一、Servlet配置

servlet/jsp Mapping URL : /servlet/add_servlet

File Path of web.xml : /项目名称/WebRoot/WEB-INF

十二、图片上传

图片上传要实现的是:将图片上传到服务器保存到某个文件夹中,将图片名称放到数据库中,图片名称一般根据当前时间来重命名。详情见***。

十三、JSP连接MySQL

DriverManager是管理JDBC驱动程序的接口,它通过getConnection方法获得Connection对象引用。Connection con = DriverManager.getConnection();

Statement是向数据库提交SQL语句并返回相应结果的工具。

ResultSet executeQuery(String sql) throws SQLException

Int executeUpdate(String sql) 返回发生改变的记录条数

Boolean execute(String sql) 判断是否执行成功

PreparedStatement接口继承Statement接口,当一条SQL语句

需要稍加变化而反复执行时,通常采用PreparedStatement。

十四、翻页功能

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
首先定义变量:
<%
int intpage;
int currentpage=1;
int pagenumbers=7;
if(request.getParameter("page")!=null && request.getParameter("page")!="")
intpage=Integer.parseInt(request.getParameter("page"));
else intpage=1;
int totalrecord=1;
%>
然后读取数据库数据记录条数信息:
String sql="select count(*) from files ";
totalrecord=DataProcess.nCount(sql);
然后读取数据并显示:
<% int i=0;
if(totalrecord==0){
%>

暂无文件

<%
} else if(totalrecord!=0){
int countpage=(totalrecord/pagenumbers);
if(totalrecord%pagenumbers>0) countpage++;
ResultSet rs=files_manage.getFilesList();
while(rs.next())
{ if(i>=(intpage-1)*pagenumbers && iint id=rs.getInt("id");
。。。。。。
}
i++;
}
rs.close(); %>

文件总数:<%=totalrecord%> 当前页数:<%=intpage%> 共<%=countpage%>页

<%
if(intpage != 1){
%>
<%}
if(intpage != countpage){
%>
<%}%>
<%} %>

相关文档
最新文档