对下面的java代码进行注释,关键语句给点中文的解释,部分函数的功能,这是个聊天室程序 20
enterRoom.Action,enterRoom.Action的主要代码如下:packagecom.test.action;@OverridepublicString...
enterRoom.Action,enterRoom.Action的主要代码如下:
package com.test.action;
@Override
public String execute() throws Exception {
roomName = new String(roomName.getBytes("ISO-8859-1"),"utf-8");
System.out.println(roomName);
userName = new String(userName.getBytes("ISO-8859-1"),"utf-8");
System.out.println(userName);
if(roomName==null){
System.out.println("你没有选择房间");
setTip("你没有选择房间");
return "error";
}
if(userName==null){
System.out.println("你没有登陆");
setTip("你没有登陆");
return "error";
}
Map session = ActionContext.getContext().getSession();
session.put("roomName", roomName);
//查看这个用户当前是否在线
UserList test=userListService.getUserListsByUserName(userName);//即为在线用户(半个小时内的发信息的用户,由后台数据库维护)
if(test==null){//不是在线用户
System.out.println("欢迎您,"+userName+"聊天室名称为:"+roomName);
setTip("欢迎您,"+userName+",聊天室名称为:"+roomName);
userListService.saveUserList(new UserList(roomName,userName,new java.sql.Timestamp(System.currentTimeMillis()),new java.sql.Timestamp(System.currentTimeMillis())));
session.put("loginDate", new java.sql.Timestamp(System.currentTimeMillis()));
}else{
if(roomName.equals(test.getRoomName())){
setTip("您已经是该房间的在线用户,可以继续聊天!");
}else{
if(test.getRoomName()!=null&&!test.getRoomName().equals("")){
setTip("您进入了新的房间"+roomName+",上次进入的房间名称为"+test.getRoomName());
}else{
setTip("您进入了新的房间"+roomName);
}
test.setRoomName(roomName);
test.setLoginDate(new java.sql.Timestamp(System.currentTimeMillis()));
test.setMessDate(new java.sql.Timestamp(System.currentTimeMillis()));
userListService.updateUserList(test);
}
session.put("loginDate", test.getLoginDate());
}
//获得当前该聊天室所有在线用户
onlineUser=userListService.findOnlineUserLists(roomName);
session.put("onlineUser", onlineUser);
return "success";
}
public UserListService getUserListService() {
return userListService;
}
public void setUserListService(UserListService userListService) {
this.userListService = userListService;
}
public String getRoomName() {
return roomName;
}
public void setRoomName(String roomName) {
this.roomName = roomName;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public List<String> getOnlineUser() {
return onlineUser;
}
public void setOnlineUser(List<String> onlineUser) {
this.onlineUser = onlineUser;
}
public MessService getMessService() {
return messService;
}
public void setMessService(MessService messService) {
this.messService = messService;
}
public String getMessStr() {
return messStr;
}
public void setMessStr(String messStr) {
this.messStr = messStr;
}
} 展开
package com.test.action;
@Override
public String execute() throws Exception {
roomName = new String(roomName.getBytes("ISO-8859-1"),"utf-8");
System.out.println(roomName);
userName = new String(userName.getBytes("ISO-8859-1"),"utf-8");
System.out.println(userName);
if(roomName==null){
System.out.println("你没有选择房间");
setTip("你没有选择房间");
return "error";
}
if(userName==null){
System.out.println("你没有登陆");
setTip("你没有登陆");
return "error";
}
Map session = ActionContext.getContext().getSession();
session.put("roomName", roomName);
//查看这个用户当前是否在线
UserList test=userListService.getUserListsByUserName(userName);//即为在线用户(半个小时内的发信息的用户,由后台数据库维护)
if(test==null){//不是在线用户
System.out.println("欢迎您,"+userName+"聊天室名称为:"+roomName);
setTip("欢迎您,"+userName+",聊天室名称为:"+roomName);
userListService.saveUserList(new UserList(roomName,userName,new java.sql.Timestamp(System.currentTimeMillis()),new java.sql.Timestamp(System.currentTimeMillis())));
session.put("loginDate", new java.sql.Timestamp(System.currentTimeMillis()));
}else{
if(roomName.equals(test.getRoomName())){
setTip("您已经是该房间的在线用户,可以继续聊天!");
}else{
if(test.getRoomName()!=null&&!test.getRoomName().equals("")){
setTip("您进入了新的房间"+roomName+",上次进入的房间名称为"+test.getRoomName());
}else{
setTip("您进入了新的房间"+roomName);
}
test.setRoomName(roomName);
test.setLoginDate(new java.sql.Timestamp(System.currentTimeMillis()));
test.setMessDate(new java.sql.Timestamp(System.currentTimeMillis()));
userListService.updateUserList(test);
}
session.put("loginDate", test.getLoginDate());
}
//获得当前该聊天室所有在线用户
onlineUser=userListService.findOnlineUserLists(roomName);
session.put("onlineUser", onlineUser);
return "success";
}
public UserListService getUserListService() {
return userListService;
}
public void setUserListService(UserListService userListService) {
this.userListService = userListService;
}
public String getRoomName() {
return roomName;
}
public void setRoomName(String roomName) {
this.roomName = roomName;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public List<String> getOnlineUser() {
return onlineUser;
}
public void setOnlineUser(List<String> onlineUser) {
this.onlineUser = onlineUser;
}
public MessService getMessService() {
return messService;
}
public void setMessService(MessService messService) {
this.messService = messService;
}
public String getMessStr() {
return messStr;
}
public void setMessStr(String messStr) {
this.messStr = messStr;
}
} 展开
3个回答
展开全部
package cn.text;
public class hah {
@Override
public String execute() throws Exception {
//转换字符集
roomName = new String(roomName.getBytes("ISO-8859-1"),"utf-8");
System.out.println(roomName);
//转换字符集
userName = new String(userName.getBytes("ISO-8859-1"),"utf-8");
System.out.println(userName);
//判断房间是否为空
if(roomName==null){
System.out.println("你没有选择房间");
//设置返回提示的信息,在登录页面接受
setTip("你没有选择房间");
return "error";
}//判断用户是否为空
if(userName==null){
System.out.println("你没有登陆");
setTip("你没有登陆");
return "error";
}
//获取session
Map session = ActionContext.getContext().getSession();
//将存在的用户放入session
session.put("roomName", roomName);
//查看这个用户当前是否在线
UserList test=userListService.getUserListsByUserName(userName);//即为在线用户(半个小时内的发信息的用户,由后台数据库维护)
if(test==null){//不是在线用户
System.out.println("欢迎您,"+userName+"聊天室名称为:"+roomName);
//设置提示信息
setTip("欢迎您,"+userName+",聊天室名称为:"+roomName);
//将用户名 聊天室 当前聊天内容 当前聊天时间 放入 userListService实体类集合中
userListService.saveUserList(new UserList(roomName,userName,new java.sql.Timestamp(System.currentTimeMillis()),new java.sql.Timestamp(System.currentTimeMillis())));
//将时间放入session中
session.put("loginDate", new java.sql.Timestamp(System.currentTimeMillis()));
}else{
if(roomName.equals(test.getRoomName())){
setTip("您已经是该房间的在线用户,可以继续聊天!");
}else{
if(test.getRoomName()!=null&&!test.getRoomName().equals("")){
setTip("您进入了新的房间"+roomName+",上次进入的房间名称为"+test.getRoomName());
}else{
setTip("您进入了新的房间"+roomName);
}
test.setRoomName(roomName);
//设置登录时间
test.setLoginDate(new java.sql.Timestamp(System.currentTimeMillis()));
//设置离开时间
test.setMessDate(new java.sql.Timestamp(System.currentTimeMillis()));
//把这些信息放入集合中
userListService.updateUserList(test);
}
session.put("loginDate", test.getLoginDate());
}
//获得当前该聊天室所有在线用户
onlineUser=userListService.findOnlineUserLists(roomName);
//将在线用户放入session
session.put("onlineUser", onlineUser);
return "success";
}
/**
* 下面这些代码 是用工具生成的 ,你应该知道
* @return
*/
//UserListService 的get set 方法
public UserListService getUserListService() {
return userListService;
}
public void setUserListService(UserListService userListService) {
this.userListService = userListService;
}
//roomName 的get set 方法
public String getRoomName() {
return roomName;
}
public void setRoomName(String roomName) {
this.roomName = roomName;
}
//userName 的get set 方法
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
//onlineUser 的get set 方法
public List<String> getOnlineUser() {
return onlineUser;
}
public void setOnlineUser(List<String> onlineUser) {
this.onlineUser = onlineUser;
}
//messService 的get set 方法
public MessService getMessService() {
return messService;
}
public void setMessService(MessService messService) {
this.messService = messService;
}
//messStr 的get set 方法
public String getMessStr() {
return messStr;
}
public void setMessStr(String messStr) {
this.messStr = messStr;
}
}
public class hah {
@Override
public String execute() throws Exception {
//转换字符集
roomName = new String(roomName.getBytes("ISO-8859-1"),"utf-8");
System.out.println(roomName);
//转换字符集
userName = new String(userName.getBytes("ISO-8859-1"),"utf-8");
System.out.println(userName);
//判断房间是否为空
if(roomName==null){
System.out.println("你没有选择房间");
//设置返回提示的信息,在登录页面接受
setTip("你没有选择房间");
return "error";
}//判断用户是否为空
if(userName==null){
System.out.println("你没有登陆");
setTip("你没有登陆");
return "error";
}
//获取session
Map session = ActionContext.getContext().getSession();
//将存在的用户放入session
session.put("roomName", roomName);
//查看这个用户当前是否在线
UserList test=userListService.getUserListsByUserName(userName);//即为在线用户(半个小时内的发信息的用户,由后台数据库维护)
if(test==null){//不是在线用户
System.out.println("欢迎您,"+userName+"聊天室名称为:"+roomName);
//设置提示信息
setTip("欢迎您,"+userName+",聊天室名称为:"+roomName);
//将用户名 聊天室 当前聊天内容 当前聊天时间 放入 userListService实体类集合中
userListService.saveUserList(new UserList(roomName,userName,new java.sql.Timestamp(System.currentTimeMillis()),new java.sql.Timestamp(System.currentTimeMillis())));
//将时间放入session中
session.put("loginDate", new java.sql.Timestamp(System.currentTimeMillis()));
}else{
if(roomName.equals(test.getRoomName())){
setTip("您已经是该房间的在线用户,可以继续聊天!");
}else{
if(test.getRoomName()!=null&&!test.getRoomName().equals("")){
setTip("您进入了新的房间"+roomName+",上次进入的房间名称为"+test.getRoomName());
}else{
setTip("您进入了新的房间"+roomName);
}
test.setRoomName(roomName);
//设置登录时间
test.setLoginDate(new java.sql.Timestamp(System.currentTimeMillis()));
//设置离开时间
test.setMessDate(new java.sql.Timestamp(System.currentTimeMillis()));
//把这些信息放入集合中
userListService.updateUserList(test);
}
session.put("loginDate", test.getLoginDate());
}
//获得当前该聊天室所有在线用户
onlineUser=userListService.findOnlineUserLists(roomName);
//将在线用户放入session
session.put("onlineUser", onlineUser);
return "success";
}
/**
* 下面这些代码 是用工具生成的 ,你应该知道
* @return
*/
//UserListService 的get set 方法
public UserListService getUserListService() {
return userListService;
}
public void setUserListService(UserListService userListService) {
this.userListService = userListService;
}
//roomName 的get set 方法
public String getRoomName() {
return roomName;
}
public void setRoomName(String roomName) {
this.roomName = roomName;
}
//userName 的get set 方法
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
//onlineUser 的get set 方法
public List<String> getOnlineUser() {
return onlineUser;
}
public void setOnlineUser(List<String> onlineUser) {
this.onlineUser = onlineUser;
}
//messService 的get set 方法
public MessService getMessService() {
return messService;
}
public void setMessService(MessService messService) {
this.messService = messService;
}
//messStr 的get set 方法
public String getMessStr() {
return messStr;
}
public void setMessStr(String messStr) {
this.messStr = messStr;
}
}
参考资料: strut2 实体类
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
看着这么长的问题,很纠结啊。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
贴这么长没意思
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询