登陆案例

一、创建Service项目存放共同数据

1.1  创建实体类

 private long id;
  private String loginName;
  private String userName;
  private String password;
  private long userpaymentPass;
  private long sex;
  private String email;
  private String mobile;
  private long type;
  private long userownedcouponsid;
  private String openId;

  public long getId() {
    return id;
  }

  public void setId(long id) {
    this.id = id;
  }

  public String getLoginName() {
    return loginName;
  }

  public void setLoginName(String loginName) {
    this.loginName = loginName;
  }

  public String getUserName() {
    return userName;
  }

  public void setUserName(String userName) {
    this.userName = userName;
  }

  public String getPassword() {
    return password;
  }

  public void setPassword(String password) {
    this.password = password;
  }

  public long getUserpaymentPass() {
    return userpaymentPass;
  }

  public void setUserpaymentPass(long userpaymentPass) {
    this.userpaymentPass = userpaymentPass;
  }

  public long getSex() {
    return sex;
  }

  public void setSex(long sex) {
    this.sex = sex;
  }

  public String getEmail() {
    return email;
  }

  public void setEmail(String email) {
    this.email = email;
  }

  public String getMobile() {
    return mobile;
  }

  public void setMobile(String mobile) {
    this.mobile = mobile;
  }

  public long getType() {
    return type;
  }

  public void setType(long type) {
    this.type = type;
  }

  public long getUserownedcouponsid() {
    return userownedcouponsid;
  }

  public void setUserownedcouponsid(long userownedcouponsid) {
    this.userownedcouponsid = userownedcouponsid;
  }

  public String getOpenId() {
    return openId;
  }

  public void setOpenId(String openId) {
    this.openId = openId;
  }

1.2 创建Service接口

public interface UserService {
    public void userServicePro();

   EasybuyUser getUserService(String loginName, String password);
}

二、创建消费者Provider项目

2.1 创建Dao层接口

@Repository
public interface User {
    @Select("select * from easybuy_user where loginName=#{loginName} and password=#{password} ")
    EasybuyUser getUser(@Param("loginName") String loginName, @Param("password") String password);
}

2.2 创建ServiecImpl实现类

@Service("userService")
public class UserServiceImpl implements UserService {
    @Resource
    private User user;

    @Override
    public EasybuyUser getUserService(String loginName, String password) {
        return user.getUser(loginName,password);
    }
}

2.3 创建applicationContext.xml文件将项目注入到注册中心

 <context:component-scan base-package="com.dubbo"/>

    <!--加载配置文件-->
    <context:property-placeholder location="classpath:jdbc.properties"/>
    <!--配置数据源-->
    <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource">
        <property name="driverClassName" value="${jdbc.driver}"/>
        <property name="url" value="${jdbc.url}"/>
        <property name="username" value="${jdbc.username}"/>
        <property name="password" value="${jdbc.password}"/>
    </bean>
    <!--SqlSessionFactory-->
    <bean class="org.mybatis.spring.SqlSessionFactoryBean">
        <!--加载数据源-->
        <property name="dataSource" ref="dataSource"/>
        <!--加载Mybatis配置文件-->
        <property name="configLocation" value="classpath:mybatis-config.xml"/>
    </bean>
    <!--扫描Dao层-->
    <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
        <property name="basePackage" value="com.dubbo.dao"/>
    </bean>

    <!--声明服务提供方-->
    <dubbo:application name="provider"/>
    <!--注册中心地址-->
    <dubbo:registry address="zookeeper://127.0.0.1:2181"/>
    <!--dubbo服务端口-->
    <dubbo:protocol name="dubbo" port="20880"/>

    <!--服务注册-->
    <dubbo:service interface="com.dubbo.service.DoSomeService" ref="doSomeService"/>

    <dubbo:service interface="com.dubbo.service.UserService" ref="userService"/>

2.4 创建jdbc.properties

jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/easybuy?useUniCode=true&characterEncoding=utf-8
jdbc.username=root
jdbc.password=123

2.5 创建测试类运行 配置文件

@Test
    public void shouldAnswerWithTrue() throws IOException {
        ClassPathXmlApplicationContext classPathXmlApplicationContext = new ClassPathXmlApplicationContext("applicationContext-provider.xml");

        classPathXmlApplicationContext.start();

        System.out.println("生产者已建立");
        //阻塞
        System.in.read();
    }

三、创建Consumer项目

3.1 创建login.jsp页面

<body class="login">
    <div>
      <a class="hiddenanchor" id="signup"></a>
      <a class="hiddenanchor" id="signin"></a>

      <div class="login_wrapper">
        <div class="animate form login_form">
          <section class="login_content">
            <form action="/getUser" method="post">
              <h1>后台管理系统</h1>
              <div>
                <input type="text" class="form-control" name="loginName" placeholder="请输入用户名" required="" />
              </div>
              <div>
                <input type="password" class="form-control" name="password" placeholder="请输入密码" required="" />
              </div>
              <span>${error }</span>
              <div>
                  <button type="submit" class="btn btn-success">登     录</button>
                  <button type="reset" class="btn btn-default">重 填</button>
              </div>

              <div class="clearfix"></div>

              <div class="separator">
                <div>
                  <p>©2016 All Rights Reserved. </p>
                </div>
              </div>
            </form>
          </section>
        </div>
      </div>
    </div>
  </body>

3.1 创建Controller层

@Controller
public class controller {

    @RequestMapping(value = "/getUser",method = RequestMethod.POST)
    public String getUser(String loginName,String password){
        ApplicationContext ctx=new ClassPathXmlApplicationContext( "applicationContext-consumer.xml");
        UserService userService =(UserService) ctx.getBean("userService");
        EasybuyUser userService1 = userService.getUserService(loginName, password);
        System.out.println("用户"+userService1.getUserName());
        return "index";
    }
}

3.2 创建applicationContext-consumer.xml文件将项目注入到注册中心

<context:component-scan base-package="com.dubbo"/>
    <!--添加MVC支持-->
    <mvc:annotation-driven/>
    <!--配置视图解析器-->
    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix" value="/"/>
        <property name="suffix" value=".jsp"/>
    </bean>
    <!--声明服务提供方-->
    <dubbo:application name="consumer"/>
    <!--注册中心地址-->
    <dubbo:registry address="zookeeper://127.0.0.1:2181"/>

    <!--服务消费-->
    <dubbo:reference interface="com.dubbo.service.DoSomeService" id="doSomeService"/>

    <!--服务消费-->
    <dubbo:reference interface="com.dubbo.service.UserService" id="userService"/>

SSM整合Dubbo登陆案例的更多相关文章

  1. SSM整合Dubbo案例

    一.Consumer子类 MyController类 @Controller @RequestMapping("/login") public class MyController ...

  2. SSM整合——spring4.*配置案例

    导入spring4.* 相关的jar包和依赖包即可 1.web.xml <?xml version="1.0" encoding="UTF-8"?> ...

  3. SSM整合dubbo 进行分页查询

    1.先书写Mapper和sql语句 public interface ActEntityMapper { int deleteByPrimaryKey(String actId); int inser ...

  4. springMVC:校验框架:多规则校验,嵌套校验,分组校验;ssm整合技术

    知识点梳理 课堂讲义 学习目标 能够阐述表单验证的分类和区别 能够运用表单验证的常用注解 能够编写表单验证的示例 能够编写SSM整合的应用案例 能够总结SSM整合的步骤 1 校验框架 1.1 入门-视 ...

  5. 08 SSM整合案例(企业权限管理系统):08.权限控制

    04.AdminLTE的基本介绍 05.SSM整合案例的基本介绍 06.产品操作 07.订单操作 08.权限控制 09.用户操作 10.权限关联与控制 11.AOP日志 08.权限控制 SSM权限操作 ...

  6. Springboot 整合 Dubbo/ZooKeeper 详解 SOA 案例

    摘要: 原创出处:www.bysocket.com 泥瓦匠BYSocket 希望转载,保留摘要,谢谢!   “看看星空,会觉得自己很渺小,可能我们在宇宙中从来就是一个偶然.所以,无论什么事情,仔细想一 ...

  7. Spring Boot 2.x 基础案例:整合Dubbo 2.7.3+Nacos1.1.3(配置中心)

    本文原创首发于公众号:Java技术干货 1.概述 本文将Nacos作为配置中心,实现配置外部化,动态更新.这样做的优点:不需要重启应用,便可以动态更新应用里的配置信息.在如今流行的微服务应用下,将应用 ...

  8. 08 SSM整合案例(企业权限管理系统):07.订单操作

    04.AdminLTE的基本介绍 05.SSM整合案例的基本介绍 06.产品操作 07.订单操作 08.用户操作 09.权限控制 10.权限关联与控制 11.AOP日志 07.订单操作 SSM订单操作 ...

  9. 08 SSM整合案例(企业权限管理系统):05.SSM整合案例的基本介绍

    04.AdminLTE的基本介绍 05.SSM整合案例的基本介绍 06.产品操作 07.订单操作 08.权限控制 09.用户和角色操作 10.权限关联 11.AOP日志 05.SSM整合案例的基本介绍 ...

随机推荐

  1. 2019CCPC网络赛

    ^&^ (HDU 6702) Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Other ...

  2. 2.RabbitMQ 的可靠性消息的发送

      本篇包含 1. RabbitMQ 的可靠性消息的发送 2. RabbitMQ 集群的原理与高可用架构的搭建 3. RabbitMQ 的实践经验   上篇包含 1.MQ 的本质,MQ 的作用 2.R ...

  3. SQL——LIKE操作符

    一.LIKE操作符的基本用法 LIKE操作符用于在WHERE子句中,搜索相似.类似的数据. LIKE操作符语法: SELECT 列名1,列名2... FROM 表名 WHERE 列名 LIKE xxx ...

  4. Lucene BooleanQuery中的Occur.MUST与Occur.Should

    https://www.cnblogs.com/weipeng/archive/2012/04/18/2455079.html   1.  多个MUST的组合不必多说,就是交集 2.  MUST和SH ...

  5. cesium 检测视图改变的代码

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8&quo ...

  6. 子进程的LD_PRELOAD

    一个指定LD_PRELOAD的进程创建的子进程是否受LD_PRELOAD的影响? 1. fork()后在子进程中执行函数. main.c #include <unistd.h> #incl ...

  7. PHP 常用数据库操作

    1.建立与数据库服务器的连接(前提数据库服务器必须打开) 第一个参数:本地地址 第二个参数:数据库账户 第三个参数:数据库密码 第四个参数:数据库名称 $connection = mysqli_con ...

  8. elementui switch 开关,点击确认按钮后在进行开关

    <el-table-column label="上头条" align="center"> <template slot-scope=" ...

  9. 忽略警告@SuppressWarnings的用法

    @SuppressWarnings注解用法 @SuppressWarnings注解主要用在取消一些编译器产生的警告对代码左侧行列的遮挡,有时候这会挡住我们断点调试时打的断点. 我们可以在方法上加上@S ...

  10. 如何打包ANE

    来源:http://blog.sina.com.cn/s/blog_6471e1bb01012aql.html 首先先说一下打包ANE必须的部件: 1.ActionScript扩展库SWC 2.本机扩 ...