安徽新华学院2015届本科毕业论文(设计)
图4.4 关卡挑战界面
4.5 猜歌游戏主界面的实现
用户选择不同类型的歌曲以后,将选择的信息反馈到服务器端,在服务器端通过
查询数据库找到用户选择类型的歌曲。随机产生一首歌曲,并获取歌曲的歌名和地址。再从数据库中取出140个常用的汉字。随机产生的汉字与歌曲的名称组合成30个汉字。再随机排列,展现在页面上。
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//获得session
User user=(User)request.getSession().getAttribute(\//获取玩家基本信息 int userId;
if(user!=null&&!\
userId=user.getIid();
User userGame=UserDao.getUser(String.valueOf(userId)); request.setAttribute(\int userDj=user.getDj();
18
安徽新华学院2015届本科毕业论文(设计)
}
String dj=null; if(userDj<1000){ }
else if(userDj>=1000&&userDj<3000){ }
else if(userDj>=3000&&userDj<6000){ }
else if(userDj>=6000&&userDj<8000){ }
else if(userDj>=8000&&userDj<12000){ }
else if(userDj>=12000){ }
request.setAttribute(\
dj=\最强王者\dj=\钻石\dj=\白金\dj=\黄金\dj=\白银\dj=\青铜\
//获得关卡
String guanka=request.getParameter(\//定义当前第几关 int dqdjg;
if(guanka==null||\ }
19
dqdjg=1;
安徽新华学院2015届本科毕业论文(设计)
else{ }
request.setAttribute(\List
// 1. 流行歌曲 2。民族歌曲 3.经典歌曲 4.黄梅戏 5. 随机歌曲 String flag=request.getParameter(\String where=\//表示挑战赛
if(flag!=null&&flag.equals(\}
////表示普通场 else{ }
List
//获取有多少首歌
int countMusic=musicList.size(); //随机产生一首歌
int a=(int) (Math.random()*countMusic+1); if(a>=1){
Music music=musicList.get(a-1); request.setAttribute(\ //获取地址
where=where+\dqdjg=Integer.parseInt(guanka)+1;
20
安徽新华学院2015届本科毕业论文(设计)
String musicUrl=music.getMusicPath(); //获取歌曲真实名
String musicRealName=music.getMusicRealName(); // 获取歌曲名
String musicName=music.getMusicName();
request.setAttribute(\musicUrl.trim()+musicName.trim());
//获取music名字额长度
int musicLength=musicRealName.trim().length(); //随机获取30-musicLength个字
for (int i = 0; i < 30-musicLength; i++) { int b=(int) (Math.random()*count); list.add(gcList.get(b).getSjzd()); }
//将歌曲名称放入 list集合中
for(int i = 0; i < musicLength; i++){ }
List
//获取猜歌游戏按钮
StringBuilder gequan=new StringBuilder();
21
list.add(musicRealName.charAt(i));
int c=(int) (Math.random()*list.size()); System.out.print(list.get(c)+\Grade grade=new Grade();
grade.setSjzd(String.valueOf(list.get(c))); list.remove(c); syList.add(grade);
安徽新华学院2015届本科毕业论文(设计)
for(int i=0;i<30;i++){
int d=i+1;
gequan.append(\
id='click_\
='\\
}
System.out.println(gequan);
request.setAttribute(\StringBuilder gequz=new StringBuilder(); //获取猜歌的一共需要几个字 for(int i=0;i int d=i+1; gequz.append(\onclick='deletecg()'>\ } } request.setAttribute(\request.setAttribute(\ request.setAttribute(\ request.setAttribute(\ } catch (Exception e) { } // TODO: handle exception request.getRequestDispatcher(\esponse); } 22