Sunday, 24 January 2016

DAT -- Beans.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans
    xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:p="http://www.springframework.org/schema/p"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
               http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
 
<!--   <bean id="ds" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="com.microsoft.jdbc.sqlserver.SQLServerDriver"></property>
<property name="url" value="jdbc:microsoft:sqlserver://HOST:1433;DatabaseName=DATABASE"></property>
<property name="username" value="sa"></property>
<property name="password" value="syntel123$"></property>
</bean>
<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource" ref="ds"></property>
</bean>-->
<bean id="lpb" class="login.LoginPojo" scope="singleton" autowire="byName">
</bean>
<bean id="rpb" class="register.RegisterPojo" scope="singleton" autowire="byName"></bean>
<bean id="rdao" class="register.RegisterDao"></bean>
 
</beans>  

DAT -- RegisterService

package register;

import java.util.ArrayList;

import javax.ws.rs.Consumes;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;

import org.json.JSONObject;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

import com.google.gson.Gson;

@Path("/path2")
public class RegisterServc {
@Path("/{registerObj}")
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_FORM_URLENCODED)
public Response regUser(@PathParam("registerObj") String registerObj)
{
System.out.println("register obj"+registerObj);

ApplicationContext ac = new ClassPathXmlApplicationContext("beans.xml");
RegisterPojo rp1 = (RegisterPojo) ac.getBean("rpb");
Gson gs = new Gson();
RegisterPojo rp = gs.fromJson(registerObj, RegisterPojo.class);
RegisterPojo orig =  new RegisterPojo();
rp1.firstName = rp.firstName;
rp1.lastName = rp.lastName;
System.out.println(rp1.firstName);

RegisterDao rd=(RegisterDao)ac.getBean("rdao");
boolean status = rd.saveUser(rp);




return Response.status(202).entity(orig.toString()).header("Content-Type","application/x-www-form-urlencoded").build();
}

}

DAT -- RegisterPojo

package register;

public class RegisterPojo {
    public String firstName;
    public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
public String getEid() {
return eid;
}
public void setEid(String eid) {
this.eid = eid;
}
public String getPwd() {
return pwd;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public String getDob() {
return dob;
}
public void setDob(String dob) {
this.dob = dob;
}
public String lastName;
    public String eid;
    public String pwd;
    public String gender;
    public String dob;
    public RegisterPojo()
    {}
   
    @Override
    public String toString()
    {
    return "RegisterPojoObject"+"{"+"["+"fn:"+firstName+","+"lastName"+lastName+","+"email"+eid+","+"pwd"+pwd+","+"gender"+gender+","+"dob"+"dob"+"]"+"}";
    }
   
}

DAT -- RegisterDao

package register;

import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

import org.springframework.dao.DataAccessException;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.PreparedStatementCallback;
import org.springframework.jdbc.core.ResultSetExtractor;

public class RegisterDao implements IRegister{
private JdbcTemplate jdbcTemplate;

public void setJdbcTemplate(JdbcTemplate jdbcTemplate){
this.jdbcTemplate=jdbcTemplate;
}
public boolean saveUser(final RegisterPojo r)
{
String query = "insert into userdetails values(?,?,?,?,?,?)";
return jdbcTemplate.execute(query,new PreparedStatementCallback<Boolean>(){
@Override
public Boolean doInPreparedStatement(PreparedStatement ps)
throws SQLException, DataAccessException {
ps.setString(1, r.getFirstName());
ps.setString(2,r.getLastName());
ps.setString(3, r.getEid());
ps.setString(4,r.getPwd());
ps.setString(5, r.getDob());
ps.setString(6, r.getGender());
return ps.execute();
}
});
}
public int updateUser(RegisterPojo r)
{
String query = "update userdetails set firstName='"+r.getFirstName()+"',lastName='"+r.getLastName()+"',eid='"+r.getEid()+"',pwd='"+r.getPwd()+"',dob='"+r.getDob()+"',gender='"+r.getGender()+"' where eid='"+r.getEid()+"' ";

return jdbcTemplate.update(query);
}
public int deleteUser(RegisterPojo r )
{
String query="delete from userdetails where eid='"+r.getEid()+"'";
return jdbcTemplate.update(query);
}
public List<RegisterPojo> getDetails(){
return jdbcTemplate.query("select firstName,lastName,dob,gender from userdetails", new ResultSetExtractor<List<RegisterPojo>>(){

@Override
public List<RegisterPojo> extractData(ResultSet rs)
throws SQLException, DataAccessException {
List<RegisterPojo> list = new ArrayList<RegisterPojo>();
while(rs.next()){
RegisterPojo rp = new RegisterPojo();
rp.setFirstName(rs.getString(1));
rp.setLastName(rs.getString(2));
rp.setDob(rs.getString(3));
rp.setGender(rs.getString(4));
list.add(rp);
return list;

}

return null;
}



});


};

}

DAT -- IRegister

package register;

import java.util.List;

public interface IRegister {
 public boolean saveUser(final RegisterPojo r);
 public int updateUser(RegisterPojo r);
 public int deleteUser(RegisterPojo r);
 public List<RegisterPojo> getDetails();
}

DAT -- LoginInterface

package login;

public interface LoginInterface {
public String addUser();
public String deleteUser();
public String updateUser();
public String editUser();
public String loginUser();



}

DAT -- LoginPojo

package login;

public class LoginPojo {

public String id;
public LoginPojo() {


}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getPwd() {
return pwd;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
public String pwd;

@Override
public String toString()
{
return "LoginDetails"+"{"+"["+"id:"+id+","+"pwd:"+pwd+"]"+"}";
}
public void display()
{
 System.out.println("LoginDetails [id=" + id + ", pwd=" + pwd + "]");
}

}

DAT -- LoginService

package login;
import java.io.IOException;
import java.util.ArrayList;

import javax.ws.rs.Consumes;
import javax.ws.rs.FormParam;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

import com.google.gson.Gson;
import com.google.gson.GsonBuilder;



@Path("/path1")
public class LoginServc {

@POST
@Path("/{LoginDetails}")
@Consumes(MediaType.APPLICATION_FORM_URLENCODED)
@Produces(MediaType.APPLICATION_JSON)
public Response getLoginDetails(@PathParam("LoginDetails") String LoginDetails )
{  


ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");
LoginPojo lp = (LoginPojo)context.getBean("lpb");
Gson gson = new Gson();
LoginPojo result1  =  gson.fromJson(LoginDetails, LoginPojo.class);
lp.id = result1.id;
lp.pwd =result1.pwd;



System.out.println("id:"+result1.id);
System.out.println("password:"+result1.pwd);
System.out.println("------------------------------------------\n");
System.out.println("--------- from spring xml file -------------");
System.out.println("from spring xml file"+lp.id);
System.out.println("from spring xml file"+lp.pwd);
System.out.println("--------------------------------------------\n");
System.out.println("--------- display method from pojo ---------");
lp.display();
System.out.println("--------------------------------------------\n");


return Response.status(202).entity(result1.toString()).header("Content-Type","application/x-www-form-urlencoded").build();
}
}

DAT -- web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  <display-name>LoginWebService</display-name>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
   
  </welcome-file-list>
  <servlet>
   <servlet-name>Login Service for my tool
   </servlet-name>
   <servlet-class>org.glassfish.jersey.servlet.ServletContainer
   </servlet-class>
   <init-param>
    <param-name>jersey.config.server.provider.packages</param-name>
    <param-value>login</param-value>
   </init-param>
   <load-on-startup>0</load-on-startup>
 
  </servlet>
  <servlet-mapping>
   <servlet-name>Login Service for my tool</servlet-name>
   <url-pattern>/login/*</url-pattern>
  </servlet-mapping>
 
  <servlet>
   <servlet-name>Register Service for my tool
   </servlet-name>
   <servlet-class>org.glassfish.jersey.servlet.ServletContainer
   </servlet-class>
   <init-param>
    <param-name>jersey.config.server.provider.packages</param-name>
    <param-value>register</param-value>
   </init-param>
   <load-on-startup>1</load-on-startup>
 
  </servlet>
  <servlet-mapping>
   <servlet-name>Register Service for my tool</servlet-name>
   <url-pattern>/register/*</url-pattern>
  </servlet-mapping>
 
 
 
 
</web-app>