📄 userservice.java
字号:
package dataservice;
import java.sql.ResultSet;
import java.sql.SQLException;
import domain.Book;
import domain.Cart;
import domain.Counter;
import domain.Goods;
import domain.User;
import oracle.jdbc.OracleTypes;
public class UserService extends Service {
public static void main(String[] args) {
System.out.println("User Service Test");
UserService us = new UserService();
// System.out.println(us.loginCheck("lily", "12"));
// System.out.println(us.register("li1111111111111111111111111111111555555555555555555555", "li"));
// System.out.println(us.updateInfo("lily", "lily", "swinglily", "ma", "hello everybody"));
// System.out.println();
// User user = us.getUser("lily");
// System.out.println("ID:" + user.getId());
// System.out.println("PASS:" + user.getPassword());
// System.out.println("NAME:" + user.getName());
// System.out.println("GENDER:" + user.getGender());
// System.out.println("BALANCE:" + user.getBalance());
// System.out.println("NOTE:" + user.getNote());
// User user = us.getUser("05083224");
// System.out.println(user.getId());
// Cart cart = us.getCart("05083224");
// System.out.println(cart.size());
// String errorMsg = us.addGoodToCart("05083224", "05083224", "20080103100752lily", 5, "普通商品");
// System.out.println("errorMsg:" + errorMsg);
System.out.println(us.getCounter("05083224").size());
}
public String loginCheck(String userId, String password) {
open();
int isSuccessful = 0;
String errorMsg = null;
util.prepareCall("{ call loginCheck(?, ?, ?, ?) }");
util.setString(1, userId);
util.setString(2, password);
util.registerOutParameter(3, OracleTypes.NUMERIC);
util.registerOutParameter(4, OracleTypes.VARCHAR);
util.execute();
isSuccessful = util.getInt(3);
errorMsg = util.getErrorMsg() + util.getString(4);
close();
if (isSuccessful == 1)
return null;
else
return errorMsg;
}
public String register(String userId, String password) {
open();
int isSuccessful = 0;
String errorMsg = null;
util.prepareCall("{ call register(?, ?, ?, ?) }");
util.setString(1, userId);
util.setString(2, password);
util.registerOutParameter(3, OracleTypes.NUMERIC);
util.registerOutParameter(4, OracleTypes.VARCHAR);
util.execute();
isSuccessful = util.getInt(3);
errorMsg = util.getErrorMsg() + util.getString(4);
close();
if (isSuccessful == 1)
return null;
else
return errorMsg;
}
public String updateInfo(String userId, String password, String name, String gender, String note) {
open();
int isSuccessful = 0;
String errorMsg = null;
util.prepareCall("{ call updateInfo(?, ?, ?, ?, ?, ?, ?) }");
util.setString(1, userId);
util.setString(2, password);
util.setString(3, name);
util.setString(4, gender);
util.setString(5, note);
util.registerOutParameter(6, OracleTypes.NUMERIC);
util.registerOutParameter(7, OracleTypes.VARCHAR);
util.execute();
isSuccessful = util.getInt(6);
errorMsg = util.getErrorMsg() + util.getString(7);
close();
if (isSuccessful == 1)
return null;
else
return errorMsg;
}
public String updatePassword(String userId, String password, String newPassword) {
open();
int isSuccessful = 0;
String errorMsg = null;
util.prepareCall("{ call updatePassword(?, ?, ?, ?, ?) }");
util.setString(1, userId);
util.setString(2, password);
util.setString(3, newPassword);
util.registerOutParameter(4, OracleTypes.NUMERIC);
util.registerOutParameter(5, OracleTypes.VARCHAR);
util.execute();
isSuccessful = util.getInt(4);
errorMsg = util.getErrorMsg() + util.getString(5);
close();
if (isSuccessful == 1)
return null;
else
return errorMsg;
}
public String deposit(String userId, double balance) {
open();
int isSuccessful = 0;
String errorMsg = null;
util.prepareCall("{ call deposit(?, ?, ?, ?) }");
util.setString(1, userId);
util.setDouble(2, balance);
util.registerOutParameter(3, OracleTypes.NUMERIC);
util.registerOutParameter(4, OracleTypes.VARCHAR);
util.execute();
isSuccessful = util.getInt(3);
errorMsg = util.getErrorMsg() + util.getString(4);
close();
if (isSuccessful == 1)
return null;
else
return errorMsg;
}
/**
* pay never used!
*/
public String pay(String userId, String password, double balance) {
open();
int isSuccessful = 0;
String errorMsg = null;
util.prepareCall("{ call pay(?, ?, ?, ?, ?) }");
util.setString(1, userId);
util.setString(2, password);
util.setDouble(3, balance);
util.registerOutParameter(4, OracleTypes.NUMERIC);
util.registerOutParameter(5, OracleTypes.VARCHAR);
util.execute();
isSuccessful = util.getInt(4);
errorMsg = util.getErrorMsg() + util.getString(5);
close();
if (isSuccessful == 1)
return null;
else
return errorMsg;
}
public String addGoodToCart(String userId, String password, String goodId, int goodCount, String goodType) {
open();
int isSuccessful = 0;
String errorMsg = null;
util.prepareCall("{ call addGoodToCart(?, ?, ?, ?, ?, ?, ?) }");
util.setString(1, userId);
util.setString(2, password);
util.setString(3, goodId);
util.setInt(4, goodCount);
util.setString(5, goodType);
util.registerOutParameter(6, OracleTypes.NUMERIC);
util.registerOutParameter(7, OracleTypes.VARCHAR);
util.execute();
isSuccessful = util.getInt(6);
errorMsg = util.getErrorMsg() + util.getString(7);
close();
if (isSuccessful == 1)
return null;
else
return errorMsg;
}
public String removeGoodFromCart(String userId, String password, String goodId, String goodType) {
open();
int isSuccessful = 0;
String errorMsg = null;
util.prepareCall("{ call removeGoodFromCart(?, ?, ?, ?, ?, ?) }");
util.setString(1, userId);
util.setString(2, password);
util.setString(3, goodId);
util.setString(4, goodType);
util.registerOutParameter(5, OracleTypes.NUMERIC);
util.registerOutParameter(6, OracleTypes.VARCHAR);
util.execute();
isSuccessful = util.getInt(5);
errorMsg = util.getErrorMsg() + util.getString(6);
close();
if (isSuccessful == 1)
return null;
else
return errorMsg;
}
public User getUser(String userId) {
User user = new User();
open();
util.prepareCall("{ ? = call getUserInfo(?) }");
util.registerOutParameter(1, OracleTypes.CURSOR);
util.setString(2, userId);
util.execute();
ResultSet rs = util.getResultSet(1);
try {
if(rs.next()) {
user.setId(rs.getString(1).trim());
user.setPassword(rs.getString(2));
user.setName(rs.getString(3).trim());
user.setGender(rs.getString(4).trim());
user.setBalance(rs.getDouble(5));
user.setNote(rs.getString(6).trim());
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
close();
}
return user;
}
public Cart getCart(String userId) {
Cart cart = new Cart();
open();
util.prepareCall("{ ? = call getCartInfo(?) }");
util.registerOutParameter(1, OracleTypes.CURSOR);
util.setString(2, userId);
util.execute();
ResultSet rs = util.getResultSet(1);
try {
while(rs != null && rs.next()) {
User user = new User();
user.setId(userId);
cart.setUser(user);
int count = 0;
String goodType = null;
Goods goods = new Goods();
Book book = new Book();
count = rs.getInt(3);
goodType = rs.getString(4).trim();
if (goodType.equals("普通商品")) {
goods.setId(rs.getString(2));
cart.addGood(goods,count);
}
else if (goodType.equals("图书")) {
book.setId(rs.getString(2));
cart.addGood(book, count);
}
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
close();
}
return cart;
}
public Counter getCounter(String userId) {
Counter counter = new Counter();
open();
util.prepareCall("{ ? = call getGoodCounterInfo(?) }");
util.registerOutParameter(1, OracleTypes.CURSOR);
util.setString(2, userId);
util.execute();
ResultSet rs = util.getResultSet(1);
try {
while (rs != null && rs.next()) {
User user = new User();
user.setId(userId);
Goods goods = new Goods();
goods.setId(rs.getString(1));
goods.setName(rs.getString(2));
goods.setPrice(rs.getDouble(3));
goods.setNumber(rs.getInt(4));
goods.setSaler(user);
goods.setCategory(rs.getString(6), 0);
goods.setCategory(rs.getString(7), 1);
goods.setCategory(rs.getString(8), 2);
if (rs.getInt(9) == 0)
goods.setReleased(false);
else
goods.setReleased();
counter.addGood(goods, rs.getInt(4));
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
close();
}
/* open();
util.prepareCall("{ ? = call getBookCounterInfo(?) }");
util.registerOutParameter(1, OracleTypes.CURSOR);
util.setString(2, userId);
util.execute();
rs = util.getResultSet(1);
try {
while (rs != null && rs.next()) {
User user = new User();
user.setId(userId);
Book book = new Book();
book.setId(rs.getString(1));
book.setName(rs.getString(2));
book.setPrice(rs.getDouble(3));
book.setNumber(rs.getInt(4));
book.setSaler(user);
book.setCategory(rs.getString(6), 1);
book.setCategory(rs.getString(7), 2);
book.setAuthor(rs.getString(8));
book.setPress(rs.getString(9));
book.setEditon((byte)rs.getInt(10));
book.setIsbn(rs.getString(11));
book.setCategoryNum(rs.getString(12));
if (rs.getInt(13) == 0)
book.setReleased(false);
else
book.setReleased();
counter.addGood(book, rs.getInt(4));
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
close();
}
*/
return counter;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -