各位大大求帮助javaweb+Android

jinxincunyang 2013-05-15 05:40:54
搞不懂怎么联通javaweb和我的Android程序请大大指点学了1周就知道点,这代码问题出在哪里?我用的是struts2和hibernate没用sping ,sping太麻烦我有记者用求各位大大指点。
web:
package com.baby.action;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts2.ServletActionContext;

import com.baby.bean.Accounts;
import com.baby.biz.AccountsBIZ;
import com.opensymphony.xwork2.ActionSupport;

public class AccountsAction extends ActionSupport {

/**
*
*/
private static final long serialVersionUID = 1L;
private Accounts account;

public String execute() throws Exception {
HttpServletResponse response=ServletActionContext.getResponse();
HttpServletRequest request=ServletActionContext.getRequest();

response.setCharacterEncoding("utf-8");
response.setContentType("text/html");

String name=request.getParameter("name");
String pwd=request.getParameter("pwd");

this.setAccount(new AccountsBIZ().accountLogin(name, pwd));

return SUCCESS;
}

public Accounts getAccount() {
return account;
}

public void setAccount(Accounts account) {
this.account = account;
}


}

accounts略
package com.baby.biz;

import com.baby.bean.Accounts;
import com.baby.dao.AccountsDAO;

public class AccountsBIZ {

public Accounts accountLogin(String name,String pwd){
Accounts account=new AccountsDAO().getUserByName(name);
return account;
}
}

package com.baby.dao;

import org.hibernate.Query;
import org.hibernate.Session;

import com.baby.bean.Accounts;

public class AccountsDAO {

public Accounts getUserByName(String name){
Accounts account=null;
Session session = null;
try{
session = HibernateUtil.getSession();
String hql="from account where name="+name;
Query query = session.createQuery(hql);
account=(Accounts)query.uniqueResult();
}
catch(Exception e){
e.printStackTrace();
}
finally{
HibernateUtil.closeSession(session);
}
return account;
}
}
package com.baby.dao;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;

public class HibernateUtil {
private static SessionFactory factory;
static{
try{
Configuration conf=new Configuration().configure();
factory=conf.buildSessionFactory();
}catch(Exception e){
e.printStackTrace();
}
}
public static SessionFactory getSessionFactory(){
return factory;
}
public static Session getSession(){
return factory.openSession();
}
public static void closeSession(Session session){
if(session!=null){
if(session.isOpen()){
session.close();
}
}
}
}
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
<constant name="struts.i18n.encoding" value="UTF-8"/>
<package name="com.baby.action" extends="json-default">

<action name="accountsAction" class="com.baby.action.AccountsAction">
<result type="json" />
</action>

</package>
</struts>

<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

<!-- Generated by MyEclipse Hibernate Tools. -->
<hibernate-configuration>

<session-factory>
<property name="dialect">org.hibernate.dialect.Oracle9Dialect</property>
<property name="connection.url">jdbc:oracle:thin:@localhost:1521:xe</property>
<property name="connection.username">yt</property>
<property name="connection.password">yt5201220</property>
<property name="connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
<property name="myeclipse.connection.profile">oraclDriver</property>

<mapping resource="com/baby/bean/Users.hbm.xml" />
</session-factory>

</hibernate-configuration>
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
<display-name></display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<filter>
<filter-name>struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping></web-app>

android:
package com.example.babylearn;

import com.example.dbtool.Baby_L_dbUsercontrol;
import com.example.tool.ConnectWeb;
import com.example.tool.DataShare;

import android.os.Bundle;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.view.Gravity;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class MainActivity extends Activity {

private Button loginbtn;
private Button registerbtn;
private EditText accountev1_2 = null;
private EditText passwordev1_4 = null;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

loginbtn = (Button) findViewById(R.id.loginbtn);
registerbtn = (Button) findViewById(R.id.registerbtn);
accountev1_2 = (EditText) findViewById(R.id.accountev1_2);
passwordev1_4 = (EditText) findViewById(R.id.passwordev1_4);

loginbtn.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
account theuser=new ConnectWeb().userLogin(accountev1_2.getText().toString(),passwordev1_4.getText().toString());
if(theuser!=null){
// DataShare.user.setId(theuser.getId());//设置用户id
// DataShare.user.setAname(theuser.getAname());//设置用户昵称
// DataShare.user.setUserPwd(theuser.getUserPwd());//设置用户密码

// Toast.makeText(ViewLogin.this, "登录成功", Toast.LENGTH_LONG).show();
// //登录成功后进入购物车
Toast toast=Toast.makeText(MainActivity.this, "登陆成功",
Toast.LENGTH_SHORT);
toast.setGravity(Gravity.CENTER, 0, 0);
toast.show();
Intent intent = new Intent();
intent.setClass(MainActivity.this, MainInterface.class);
startActivity(intent);
}else{
Toast toast=Toast.makeText(MainActivity.this, "登陆失败",
Toast.LENGTH_SHORT);
toast.setGravity(Gravity.CENTER, 0, 0);
toast.show();
Intent intent = new Intent();
intent.setClass(MainActivity.this, Register.class);
startActivity(intent);
}
}
});

registerbtn.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent intent = new Intent(MainActivity.this, Register.class);
startActivity(intent);
finish();

}
});

}

}
package com.example.tool;

import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.util.EntityUtils;
import org.json.JSONObject;

import com.example.babylearn.account;

public class ConnectWeb {
public static String path = "http://localhost:8888/BabyLearnWeb/";

private String connWeb(String url) {
String str = "";
try {
HttpGet request = new HttpGet(url);
HttpClient httpClient = new DefaultHttpClient();
HttpResponse response = httpClient.execute(request);
if (response.getStatusLine().getStatusCode() == 200) {
str = EntityUtils.toString(response.getEntity());
}
} catch (Exception e) {
e.printStackTrace();
}
return str;
}


public account userLogin(String aname, String pwd) {
account account = null;
String url = path + "usersAction.action?aname=" + aname + "&pwd="
+ pwd;
String str = connWeb(url);
try {
JSONObject job = new JSONObject(str);
JSONObject job2 = (JSONObject) job.get("account");

account = new account();
account.setId(job2.getInt("id"));
account.setAname(job2.getString("aname"));
account.setUserPwd(job2.getString("pwd"));
System.out.println("aaa:" + job.getInt("id") + ","
+ job.getString("aname") + "," + job.getString("pwd"));
} catch (Exception e) {
e.printStackTrace();
}
return account;
}


}
...全文
202 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
logic_well 2013-05-16
  • 打赏
  • 举报
回复
REST协议 android和web是2个应用 通过http协议来请求和响应数据 数据采用JSON或XML等结构化可扩展文档形式

25,980

社区成员

发帖
与我相关
我的任务
社区描述
高性能WEB开发
社区管理员
  • 高性能WEB开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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