Java String数组赋值的问题,希望有人为我解惑

lwcxgt601184 2016-05-25 09:57:01
在一个抽象类类中有这么一句话
protected String[] msg = null;
public AbstractService(String msg) {
this.msg = msg.split(Param.SPACE);//以空格为分隔符进行分割成数组
}

没有为msg这个String数组赋值,然后有一个子类继承这个抽象类其中有这么几句话
/** 登陆账号密码核对 */
private static final String SQL_LOGIN = "SELECT * FROM USERLOGIN WHERE USERID = '?' AND PASSWORD = '?';";
* @param msg 的格式是:用户ID+密码+IP+端口+状态 */
public LoginService(String msg) {
//调用父类(AbstractService)的构造方法
super(msg);
}
String SQL = SQL_LOGIN.replaceFirst("\\?", msg[0]);
SQL = SQL.replaceFirst("\\?", msg[1]);
rs = stat.executeQuery(SQL);

程序怎么判断msg[0],msg[1] 分别是ID和密码呢
...全文
124 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
imfang 2016-05-25
  • 打赏
  • 举报
回复
用户ID+密码+IP+端口+状态 既然是用空格分隔,那么各部分内部就不允许出现空格了,比如密码中不能使用空格,如果不能保证,那就不能保证正确获取各部分内容。 另外要确保整个串前后都没有空格,各部分之间只能有一个空格分隔,否则也会出错。 这样的话,msg[0]就是用户id,msg[1]就是密码,msg[2]就是ip,依次类推。
lwcxgt601184 2016-05-25
  • 打赏
  • 举报
回复
+是表示空格
lwcxgt601184 2016-05-25
  • 打赏
  • 举报
回复
这是Param类中SPACE的定义 public static String SPACE = " ";
imfang 2016-05-25
  • 打赏
  • 举报
回复
用户ID+密码+IP+端口+状态 你的+是表示空格吗? 另外你的Param.SPACE是如何定义的?因为msg.split()的参数实际是正则表达式字符串,不知你注意到没有?

62,628

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧