第一个项目——用户管理系统
2014-09-21 15:21
302 查看
一、目的:学习servlet,完成用户管理系统
二、涉及内容:TomCat的安装及使用,MyEclipse的安装及使用,MySQL的安装及使用,Cookie的原理和使用,HttpSession的原理和使用,连接数据库,分页······
1.TomCat的环境变量配置:
安装TomCat后,在系统变量下添加CATALINA_HOME和CATALINA_BASE两个变量,值为TomCat的安装路径
再添加CLASSPATH变量,值为.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar 其中JAVA_HOME为jdk的安装目录,以前已配置
最后在Path变量下添加%JAVA_HOME%\jre\bin;%CATALINA_HOME%\lib;%CATALINA_HOME%\bin
在CMD命令下输入命令:startup,出现如下对话框,表明服务启动成功。
打开浏览器,在地址栏中输入http://localhost:8080回车,如果看到Tomcat自带的一个JSP页面,说明你的JDK和Tomcat已搭建成功。
2.MyEclipse的配置
和TomCat相关联:Window->Preference,直接输入TomCat,选择对应的版本,TomCat 7.x
选择Enable,选择TomCat home directory后面的Browser按钮,选择TomCat的安装路径,然后点击Apply
选择TomCat下面的jdk,选择下拉框里的jdk 1.7,点击ok
注:有可能jdk安装目录需要自己选择
3.MySQL的安装:参考:http://www.jb51.net/article/23876.htm
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
一、同一用户的不同页面共享数据(sendRedirct()方法)(最简单)通过该方法将信息传送给下一个页面:如
sendRedirect("welcome?uname = admin");的形式
优点:传送信息的速度比较快
缺点:他只能传送一个字符串,而不能使一个对象
sendRedirect(“welcome?uname=admin”)的形式
注意点:1 welcome代表必要跳转到的那个servlet的URL
2 servlet 的URL名和变量之间有?号
3 如果要传递两个以上的值,他们间要用&号隔开
如:sendRedirect(“welcome?uname=admin&pass=admin”);
4 如果传递的是中文,那你将得到乱码,需要处理一下
res.setContentType("text/html;charset=gbk"); 返回以gbk支持的编码
二、session
可以把它看为一张表,这张表有两列,有多少行就没有限制,而每一行就是session的一个属性,每个属性有两个部分,一个是该属性的名字,另一个是他的值
1:得到session
HttpSession hs = request.getSession(true);
2:向Session添加属性
hs.setAttribute(String name,object val);
3:从Session得到某个属性
String name = hs.getAttribute(String name);
4.从Session删除掉某个属性:
hs.removeAttribute(String name);
注: 当某个浏览器访问网站(通过双击浏览器进行的)时,服务器会给浏览器分配唯一一个Session id,并依此来分别不同的浏览器(即客户端),因为Session的各个属性
要占用服务器的内存,因此软件公司都是在迫不得已的情况下才使用
三、servlet操作注意事项:
需要将链接数据库的1个jar包,拷贝到tomcat服务器(SqlServer需要3个jar包)
具体有两种:
(1)将jar包考到tomcat中的lib文件夹里
(2)在webapps目录下web-inf文件夹里创建一个lib然后把三个jar包考到lib文件夹下
两种方法的区别
第一种所有的webapps都可使用3个jar【公用lib库】
第二种只有放jar的那个webapps能使用jar【独用lib库】
四、JAVA连接MYSQL
五、在wel页面添加图片
在webApps下,建立一个文件夹,如imgs。然后将图片拷贝到这个文件夹下,在
servlet中添加:
<img src="./imgs/图片名"/>
六、分页技术
1.分页算法
需要四个变量,
int pageSize :每页显示多少记录
int pageNow :希望显示第几页
int pageCount :一共有多少页
int rowCount :一共有多条记录
说明:
pageSize是指定的;pageNow是用户选择的
rowCount是从表中查询得到的
pageCount是计算出来的,计算公式
if(rowCount%pageSize==0)
{
pageCount = rowCount/pageSize;
}
else
{
pageCount = rowCount/pageSize+1
}
所以需要用到
select 字段名列表 from 表名 where id between ?and ?
以users表为例,显示第三页,查询语句为
select * from users where userId between 7 and 9
缺点,如果表的id被删除了,那么,某页中可能会少一条记录
因此我们的最终解决方法如下:
select userid,username,passwd,email,gread from mytable
where userid not in (select userid from mytable"+(pageSize*(pageNow-1))+"limit"+pageSize
查询数据库中有多少条记录:
select count (*)from mytable;
七、Cookie和session的比较
(1)cookie数据存放在客户的浏览器上,session数据放在服务器上
(2)cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗,如果主要考虑到安全应当使用session
(3)session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能,如果主要考虑到减轻服务器性能方面,应当使用COOKIE
(4)单个cookie在客户端的限制是3K,就是说一个站点在客户端存放的COOKIE不能3K。
(5)所以:将登陆信息等重要信息存放为SESSION;其他信息如果需要保留,可以放在COOKIE中
------------------------------------------------------------------------------------------------------------------------------------------------
做完这个项目才发现自己的编程素养有待提高,以上仅为自己在做的过程中所做笔记,及个人的一些看法,欢迎大神一起交流
二、涉及内容:TomCat的安装及使用,MyEclipse的安装及使用,MySQL的安装及使用,Cookie的原理和使用,HttpSession的原理和使用,连接数据库,分页······
1.TomCat的环境变量配置:
安装TomCat后,在系统变量下添加CATALINA_HOME和CATALINA_BASE两个变量,值为TomCat的安装路径
再添加CLASSPATH变量,值为.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar 其中JAVA_HOME为jdk的安装目录,以前已配置
最后在Path变量下添加%JAVA_HOME%\jre\bin;%CATALINA_HOME%\lib;%CATALINA_HOME%\bin
在CMD命令下输入命令:startup,出现如下对话框,表明服务启动成功。
打开浏览器,在地址栏中输入http://localhost:8080回车,如果看到Tomcat自带的一个JSP页面,说明你的JDK和Tomcat已搭建成功。
2.MyEclipse的配置
和TomCat相关联:Window->Preference,直接输入TomCat,选择对应的版本,TomCat 7.x
选择Enable,选择TomCat home directory后面的Browser按钮,选择TomCat的安装路径,然后点击Apply
选择TomCat下面的jdk,选择下拉框里的jdk 1.7,点击ok
注:有可能jdk安装目录需要自己选择
3.MySQL的安装:参考:http://www.jb51.net/article/23876.htm
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
一、同一用户的不同页面共享数据(sendRedirct()方法)(最简单)通过该方法将信息传送给下一个页面:如
sendRedirect("welcome?uname = admin");的形式
优点:传送信息的速度比较快
缺点:他只能传送一个字符串,而不能使一个对象
sendRedirect(“welcome?uname=admin”)的形式
注意点:1 welcome代表必要跳转到的那个servlet的URL
2 servlet 的URL名和变量之间有?号
3 如果要传递两个以上的值,他们间要用&号隔开
如:sendRedirect(“welcome?uname=admin&pass=admin”);
4 如果传递的是中文,那你将得到乱码,需要处理一下
res.setContentType("text/html;charset=gbk"); 返回以gbk支持的编码
二、session
可以把它看为一张表,这张表有两列,有多少行就没有限制,而每一行就是session的一个属性,每个属性有两个部分,一个是该属性的名字,另一个是他的值
1:得到session
HttpSession hs = request.getSession(true);
2:向Session添加属性
hs.setAttribute(String name,object val);
3:从Session得到某个属性
String name = hs.getAttribute(String name);
4.从Session删除掉某个属性:
hs.removeAttribute(String name);
注: 当某个浏览器访问网站(通过双击浏览器进行的)时,服务器会给浏览器分配唯一一个Session id,并依此来分别不同的浏览器(即客户端),因为Session的各个属性
要占用服务器的内存,因此软件公司都是在迫不得已的情况下才使用
三、servlet操作注意事项:
需要将链接数据库的1个jar包,拷贝到tomcat服务器(SqlServer需要3个jar包)
具体有两种:
(1)将jar包考到tomcat中的lib文件夹里
(2)在webapps目录下web-inf文件夹里创建一个lib然后把三个jar包考到lib文件夹下
两种方法的区别
第一种所有的webapps都可使用3个jar【公用lib库】
第二种只有放jar的那个webapps能使用jar【独用lib库】
四、JAVA连接MYSQL
try { //加载驱动程序 Class.forName("com.mysql.jdbc.Driver"); //连接数据库 Connection com = DirverManager.getConnection("jdbc:mysql://127.0.0.1:3306/abc",user,password); }
五、在wel页面添加图片
在webApps下,建立一个文件夹,如imgs。然后将图片拷贝到这个文件夹下,在
servlet中添加:
<img src="./imgs/图片名"/>
六、分页技术
1.分页算法
需要四个变量,
int pageSize :每页显示多少记录
int pageNow :希望显示第几页
int pageCount :一共有多少页
int rowCount :一共有多条记录
说明:
pageSize是指定的;pageNow是用户选择的
rowCount是从表中查询得到的
pageCount是计算出来的,计算公式
if(rowCount%pageSize==0)
{
pageCount = rowCount/pageSize;
}
else
{
pageCount = rowCount/pageSize+1
}
所以需要用到
select 字段名列表 from 表名 where id between ?and ?
以users表为例,显示第三页,查询语句为
select * from users where userId between 7 and 9
缺点,如果表的id被删除了,那么,某页中可能会少一条记录
因此我们的最终解决方法如下:
select userid,username,passwd,email,gread from mytable
where userid not in (select userid from mytable"+(pageSize*(pageNow-1))+"limit"+pageSize
查询数据库中有多少条记录:
select count (*)from mytable;
七、Cookie和session的比较
(1)cookie数据存放在客户的浏览器上,session数据放在服务器上
(2)cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗,如果主要考虑到安全应当使用session
(3)session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能,如果主要考虑到减轻服务器性能方面,应当使用COOKIE
(4)单个cookie在客户端的限制是3K,就是说一个站点在客户端存放的COOKIE不能3K。
(5)所以:将登陆信息等重要信息存放为SESSION;其他信息如果需要保留,可以放在COOKIE中
------------------------------------------------------------------------------------------------------------------------------------------------
做完这个项目才发现自己的编程素养有待提高,以上仅为自己在做的过程中所做笔记,及个人的一些看法,欢迎大神一起交流
相关文章推荐
- 第一个项目--学生管理系统的一点收获
- 打算在osc上开发第一个项目(小型个人管理系统)
- 项目(1)----用户信息管理系统(5)---(剩余jsp界面)
- java 库存 进销存 商户 多用户管理系统 SSM springmvc 项目源码
- 【新闻管理系统】入行以来的第一个项目的感想,送给所有和我一样在磨刀的大学同学们。
- 模块管理常规功能自定义系统的设计与实现(06--第一个用户模块)
- Asp.Net Core 项目实战之权限管理系统(7) 组织机构、角色、用户权限
- 【项目记录】山东大学场馆管理系统之——用户部分
- 项目实战篇-餐馆管理系统—MFC,PHP,MySql:7.管理员专属及用户管理模块(The End)
- 项目(1)----用户信息管理系统(1)---项目简介
- OA项目13:系统模块之用户管理密码加密等
- SQL第十七章项目案例:QQ用户信息管理系统
- Asp.Net Core 项目实战之权限管理系统(5) 用户登录
- 项目(1)----用户信息管理系统(4)---(struts开发)
- 做的第一个SSH项目,权限管理系统...
- 第一个纯servlet MVC开发用户管理系统总结
- 仿写用户中心项目,主要运用管理系统和系统的用户
- C# ,十七章 项目案例: QQ用户信息管理系统
- java 库存 进销存 商户 多用户管理系统 SSM springmvc 项目源码
- JSP第一个实例之用户管理系统