新手小白,首次利用csdn记录学习过程
首次写Javaweb后端
1.数据库建立相关的表
2.建立服务端并且创建相应的工厂
3.通过前端页面建立服务器联系
以建立物资管理系统为例子
前端页面如下:
一.创建数据库表
根据前端信息我们需要建立一张表:
create table tb1_provider(
id char(32) primary key,
name varchar2(50),
address varchar2(50),
postcode number,
tel varchar2(10),
fax varchar2(20),
bankName varchar2(50),
bankNo varchar2(50),
meno varchar2(200)
)
java部分:
先建立分包;
1.拥有接口,对应实现类,还有工厂,这样的好处是他人不会直接通过impl来看实现方法,直接进入工厂,也方便了代码书写。
2.domain建立所需要的属性(私有)
3.servlet实现服务端功能
首先是domain部分代码:
package com.lq.good.provider.domain;
public class Provider {
private String id;
private String name;
private String address;
private int postcode;
private String tel;
private String fax;
private String bankName;
private String bankNo;
private String meno;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public int getPostcode() {
return postcode;
}
public void setPostcode(int postcode) {
this.postcode = postcode;
}
public String getTel() {
return tel;
}
public void setTel(String tel) {
this.tel = tel;
}
public String getFax() {
return fax;
}
public void setFax(String fax) {
this.fax = fax;
}
public String getBankName() {
return bankName;
}
public void setBankName(String bankName) {
this.bankName = bankName;
}
public String getBankNo() {
return bankNo;
}
public void setBankNo(String bankNo) {
this.bankNo = bankNo;
}
public String getMeno() {
return meno;
}
public void setMeno(String meno) {
this.meno = meno;
}
}
然后dao代码:
1.接口dao:
package com.lq.good.provider.dao.dao;
import java.util.List;
import com.lq.good.provider.domain.Provider;
import com.lq.good.user.domain.Dept;
import com.lq.good.user.domain.User;
public interface ProviderDAO {
public boolean add(Provider p);//添加
public List<Provider> queryAll();//显示
public List<Provider> queryForPage(int page,int pageSize);//实现下角标页脚传递页数与大小
public int queryForCount();//计算当前所在页数
public boolean delete(String id);//删除
public Provider queryById(String id);//通过id查询
public boolean update(Provider p); //更改
}
2.创建工厂Factory:
package com.lq.good.provider.dao.factory;
import com.lq.good.provider.dao.dao.ProviderDAO;
import com.lq.good.provider.dao.impl.ProviderDAOimpl;
public class ProviderDAOFactory {
public static ProviderDAO getProviderDAO() {
return new ProviderDAOimpl();
}
}
3.实现接口impl
package com.lq.good.provider.dao.impl;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import com.lq.good.provider.dao.dao.ProviderDAO;
import com.lq.good.provider.domain.Provider;
import com.lq.good.user.domain.User;
import com.lq.good.util.DBUtil;
public class ProviderDAOimpl implements ProviderDAO {
private Connection conn;
private PreparedStatement pst;
private ResultSet rs;
@Override
public boolean add(Provider p) {
String sql="insert into tb1_provider values(?,?,?,?,?,?,?,?,?)";
try {
conn=DBUtil.openConn();
pst=conn.prepareStatement(sql);