A. 关于J2EE技术的网上购物车系统的代码 用Java写的
功能基本都已实现,如你所说,重复添加至购物车不能累加数量的bug还没修复,希望能帮到你。
还有数据库为oracle
B. 如何用J2EE标准制作中小型购物网站
如果是自己去做一个购物网站,推荐你采用以下步骤
一、项目大致分析
我这个网站做来干什么,有什么用,几个人做,多长时间做完,采用什么架构,需要用到什么技术等。
二、具体分析
既然是用Java做,你就不得不用面向对象的思维来分析问题。
首先,找出整个项目中的实体及属性
比方说,你这个系统至少应该抽象出这么几个实体
用户(用户编号、用户名、密码、性别等其他信息)
商品(商品编号、商品名、商品分类、单价、描述等信息)
商品分类(分类编号、分类描述等信息)
订单(订单编号、购买者、商品编号、数量、订单日期等信息)
诸如此类,所有可能或可以被抽离出来的实体都要抽离出来,然后建立彼此的关系。形成一张E-R图,最后由此图建立数据库模型。
三、框架设计
有了数据库模型后,接下来应该到网站的架构设计,比方你采用什么结构。一般有如下几种结构
简单实用型:JSP+JavaBean
简单实用MVC型:JSP+Servlet+JavaBean
分布式企业开发1:JSP+Servlet+EJB
框架集成型1:JSP+Struts+Spring+Hibernate
框架集成型2:Freemarter+WebWork+Spring+JDBC(Hibernate)
框架+分布式:JSP+Struts(WebWork)+EJB
等等
当然你说,看了这么多,我也不知道改用哪种,那我来推荐一种
JSP+Servlet+JavaBean的MVC型,适合你这种小型网站的开发。
决定开发类型后,准备开发环境和必备工具
例如如果用EJB,就下载JBuilder
如果是用框架,就下载Eclipse,推荐使用Eclipse,当然你可以使用插件MyEclipse
四、代码实现
这一块比较麻烦。
我假设使用JSP+Servlet+JavaBean
首先从底层代码入手,也就是从DAO层,编写一个公用的,功能强大的Dao接口,供高层调用。
然后写实体类的JavaBean,基本上一个实体类JavaBean对应一个数据库的表,或者一个视图。
然后写业务方法,所有的Service都调用共有的Dao方法来实现业务逻辑。当然这些Service就是业务类的JavaBean
最后写Servlet和JSP页面。写完一个测试一个,因为一个Servlet和一个JSP就是一个功能模块。你项目小,只有自己来测试这些功能模块。
做完这些后,开始美化页面,这时候可以使用Dreamweaver来美化页面。顺便检查页面上的js验证代码。
五、测试
测试是肯定要的。这看你个人了
六、上线
测试OK之后,可以考虑租空间,买域名,将项目上线。
大概说到这里,希望对你有帮助。
C. 我要J2EE的系统,随便什么,网上购物、招聘管理啦。。。。。
奥,好的。
希望可以帮你。
D. j2ee三层结构网上购物商城
两个什么功能?
E. 求J2EE网上购物系统
http://www.java1234.com/a/kaiyuan/javaWeb/2013/0701/438.html去看看吧。 高清视频讲解下载地址: 源码及数据库脚本下载地址:http://pan..com/share/link?shareid=1368600394&uk=3442963673 统一环境搭建说明:http://www.java1234.com/a/kaiyuan/java/2013/0419/228.html 项目部署常见问题说明:http://www.java1234.com/a/kaiyuan/java/2013/0506/315.html
F. 基于J2EE网上购物系统是如何实现的
页面放抄个登录的form,请求带着用户名密码信息、发往后台;
后台——
如果是spring,就找对应的controller;
如果是struts,就找对应的action;
不管是controller还是action,他们都会调用对应的逻辑来判断登录成功失败
并进行页面跳转。
成功了就跳进商店,失败了继续登录~
G. 用J2EE+Access数据库做一个小项目,例如网上新闻发布系统,小型的网上购物系统,学生信息管理系统
这个程序,最好自己学习写一下。写起来也不麻烦,access数据库的程序都是相对简单的。只有简单的程序会写了,对于后期复杂的程序系统才能很少出现bug。
H. 求J2EE的网上图书销售系统
1)getRequest()方法
该方法负责从页面接收到的表单资料分解,并设置图书实体的相应属性,它的返回值为Boolean类型,true表示成功,反之表示失败。部分代码如下:
public boolean getRequest(javax.servlet.http.HttpServletRequest newrequest) {
boolean flag = false;
try{
request = newrequest;
String ID = request.getParameter("id");
long bookid = 0;
try{
bookid = Long.parseLong(ID);
}catch (Exception e){
}
abooks.setId(bookid);
String bookname = request.getParameter("bookname");
if (bookname==null || bookname.equals(""))
{
bookname = "";
sqlflag = false;
}
abooks.setBookName(to_String(bookname));
String author = request.getParameter("author");
if (author==null || author.equals(""))
{
author = "";
sqlflag = false;
}
abooks.setAuthor(to_String(author));
String publish = request.getParameter("publish");;
if (publish==null)
{
publish = "";
}
abooks.setPublish(to_String(publish));
String bookclass = request.getParameter("bookclass");
int bc = Integer.parseInt(bookclass);
abooks.setBookClass(bc);
String bookno = request.getParameter("bookno");
if (bookno == null)
{
bookno = "";
}
abooks.setBookNo(to_String(bookno));
String picture = request.getParameter("picture");
if (picture == null)
{
picture = "images/01.gif";
}
abooks.setPicture(to_String(picture));
float price;
try {
price =new Float(request.getParameter("price")).floatValue();
} catch (Exception e){
price = 0;
sqlflag = false;
}
abooks.setPrince(price);
int amount;
try{
amount = new Integer(request.getParameter("amount")).intValue();
}catch (Exception e){
sqlflag = false;
amount = 0;
}
abooks.setAmount(amount);
String content = request.getParameter("content");
if (content == null)
{
content = "";
}
abooks.setContent(to_String(content));
if (sqlflag)
{
flag = true;
}
return flag;
}catch (Exception e){
return flag;
}
}
2)book_search()方法
该方法负责图书查询,包括图书的分类,分页、关键字查询。首先通过getRequest()方法获得页面表单参数值,根据参数值判断是何种查询,然后根据相应的SQL的语句从数据库里查询相应的值。这里需要用到分页技术。
部分代码如下:
/**
* 完成图书查询,包括分类,分页查询
* @param res
* @return
* @throws java.lang.Exception
*/
public boolean book_search(HttpServletRequest res) throws Exception {
DataBase db = new DataBase();
db.connect();
Statement stmt = db.conn.createStatement ();
request = res;
String PAGE = request.getParameter("page"); //页码
String classid = request.getParameter("classid");//分类ID号
String keyword = request.getParameter("keyword");//查询关键词
if (classid==null) classid="";
if (keyword==null) keyword = "";
keyword = to_String(keyword).toUpperCase();
try {
page = Integer.parseInt(PAGE);
}catch (NumberFormatException e){
page = 1;
}
//取出记录数
if (!classid.equals("") && keyword.equals("") ) {
sqlStr = "select count(*) from book where bookclass='"+classid + "'";
}
else if (!keyword.equals("")) {
if (classid.equals("")){
sqlStr = "select count(*) from book where upper(bookname) like '%" +
keyword+ "%' or upper(content) like '%" + keyword + "%'";
} else {
sqlStr = "select count(*) from book where bookclass='" + classid
+ "' and (upper(bookname) like '%" +keyword+ "%' or "+
"upper(content) like '%" + keyword + "%')";
}
} else {
sqlStr = "select count(*) from book";
}
int rscount = pageSize;
try {
ResultSet rs1 = stmt.executeQuery(sqlStr);
if (rs1.next()) recordCount = rs1.getInt(1);
rs1.close();
}catch (SQLException e){
System.out.println(e.getMessage());
return false;
}
//设定有多少pageCount
if (recordCount < 1)
pageCount = 0;
else
pageCount = (int)(recordCount - 1) / pageSize + 1;
//检查查看的页面数是否在范围内
if (page < 1)
page = 1;
else if (page > pageCount)
page = pageCount;
rscount = (int) recordCount % pageSize; // 最后一页记录数
//sql为倒序取值
sqlStr = "select a.id,a.bookname,a.bookclass,b.classname,"+
"a.author,a.publish,a.bookno,a.content,a.prince,a.amount,"+
"a.Leav_number,a.regtime,a.picture from book a,bookclass b"+
" where a.Bookclass = b.Id ";
if (!classid.equals("") && keyword.equals("") ){ //如果类别不为空,非查询
if (page == 1)
{
sqlStr = sqlStr + " and a.bookclass='" + classid + "' "+
"order by a.Id desc";
} else {
sqlStr = sqlStr + " and a.bookclass='" + classid + "limit "+
(recordCount-pageSize * page)+","+(recordCount-pageSize * (page-1));
}
} else if (!keyword.equals("")) { //如果是查询资料
if (page == 1){
if (!classid.equals("")) {//查询某一类
sqlStr = sqlStr + "and a.Bookclass='" +
classid + "' and (upper(a.bookname) like '%" +
keyword+ "%' or upper(a.content) like '%" +
keyword + "%') order by a.Id desc";
} else { //查询所有类
sqlStr = sqlStr + " and (upper(a.bookname) like '%" +
keyword+ "%' or upper(a.content) like '%" +
keyword + "%') order by a.Id desc";
}
} else {
if (!classid.equals("")){
sqlStr = sqlStr + " and a.Bookclass='" +
classid + "' and (upper(a.bookname) like '%" +
keyword+ "%' or upper(a.content) like '%" +
keyword + "%') limit "+(recordCount-pageSize * page)+","+
(recordCount-pageSize * (page-1));
} else {
sqlStr = sqlStr + " and (upper(a.bookname) like '%" +
keyword+ "%' or upper(a.content) like '%" +
keyword + "%') limit "+(recordCount-pageSize * page)+","+
(recordCount-pageSize * (page-1));
}
}
} else {//非查询,也非分类浏览
if (page == 1){
sqlStr = sqlStr + " order by a.Id desc limit 0,"+pageSize;
} else {
sqlStr = sqlStr + "limit "+(recordCount-pageSize * page)+","+
(recordCount-pageSize * (page-1));
}
}
try {
rs = stmt.executeQuery(sqlStr);
booklist = new Vector(rscount);
while (rs.next()){
book book = new book();
book.setId(rs.getLong("id"));
book.setBookName(rs.getString("bookname"));
book.setBookClass(rs.getInt("bookclass"));
book.setClassname(rs.getString("classname"));
book.setAuthor(rs.getString("author"));
book.setPublish(rs.getString("publish"));
book.setBookNo(rs.getString("Bookno"));
book.setContent(rs.getString("content"));
book.setPrince(rs.getFloat("prince"));
book.setAmount(rs.getInt("amount"));
book.setLeav_number(rs.getInt("leav_number"));
book.setRegTime(rs.getString("regtime"));
book.setPicture(rs.getString("picture"));
booklist.addElement(book);
}
rs.close();
return true;
}catch (Exception e){
System.out.println(e.getMessage());
return false;
}
}
3)insert()方法
该方法负责图书的添加,返回类型为Boolean型,true表示成功,反之失败。首先从图书对象中获得属性,组装相应的SQL语句并执行,返回执行结果。代码如下:
/**
* 完成图书添加
* @return
* @throws java.lang.Exception
*/
public boolean insert() throws Exception {
sqlStr = "insert into book (Bookname,Bookclass,Author,Publish,Bookno,"+
"Content,Prince,Amount,Leav_number,Regtime,picture) values ('";
sqlStr = sqlStr + dataFormat.toSql(abooks.getBookName()) + "','";
sqlStr = sqlStr + abooks.getBookClass() + "','";
sqlStr = sqlStr + dataFormat.toSql(abooks.getAuthor()) + "','";
sqlStr = sqlStr + dataFormat.toSql(abooks.getPublish()) + "','";
sqlStr = sqlStr + dataFormat.toSql(abooks.getBookNo()) + "','";
sqlStr = sqlStr + dataFormat.toSql(abooks.getContent()) + "','";
sqlStr = sqlStr + abooks.getPrince() + "','";
sqlStr = sqlStr + abooks.getAmount() + "','";
sqlStr = sqlStr + abooks.getAmount() + "',";
sqlStr = sqlStr + "now()"+ ",'";
sqlStr = sqlStr + abooks.getPicture()+"')";
try{
System.out.print(sqlStr);
DataBase db = new DataBase();
db.connect();
stmt =db.conn.createStatement ();
stmt.execute(sqlStr);
return true;
}catch (SQLException sqle){
System.out.print(sqle.getMessage());
return false;
}
}
5.4客户界面设计
5.4.1界面头、界面尾设计
为了提高代码的重用性,我把客户界面部分相同的头和尾做成两个模块,分别命名为 head.inc 和tail.inc,这两个文件都是纯 HTML代码,在头和尾引入下面的两句代码方可;
<%@include file=”/bookshop/inc/head.inc”%>
<%@include file=”/bookshop/inc/tail.inc”%>
I. 求最简单的J2EE网上购物系统 要求在问题补充 有的请发邮箱谢谢
这个蛮简单的,有人给你发了没?