登陆案例

一、创建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. 在 EF 中只对 日期(不包括时间)进行比较的方法

    根据 EF 的版本不同有两种不同的实现方式: EF < 6.0 时使用 EntityFunctions.TruncateTime,EF >= 6.0 时使用 DbFunctions.Tru ...

  2. 端口占用问题:java.net.BindException: Address already in use: bind

    解决方法 方法一:换一个端口 若仍然想要使用该端口,则可以将占用该端口的进程杀死即可. 方法二:杀死占用该端口的进程 若仍然想要使用该端口,则可以将占用该端口的进程杀死即可 查找端口被占用的进程id ...

  3. MySQL必知必会1

    MySQL必知必会 ​ 了解SQL 什么是数据库:数据库(database)保存有阻止的数据的容器,可以把数据库想象成一个文件柜. 什么是表:表(table) 某种特定类型结构的结构化清单,数据库中的 ...

  4. Dubbo快速入门 四

    4.业务场景 4.1).提出需求 某个电商系统,订单服务需要调用用户服务获取某个用户的所有地址: 我们现在 需要创建两个服务模块进行测试 模块 功能 订单服务web模块 创建订单等 用户服务servi ...

  5. 解决springboot 新版本 2.1.6 spring-boot-starter-actuator 访问报404

    pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="htt ...

  6. idea之常见问题解决

    在启动类中的main方式时报类似java.lang.NoClassDefFoundError: javax/servlet/http/HttpServletRequest异常 解决方案:

  7. python3.7 64位中安装pygame1.9.3

    1.我是用pip命令来安装的,首先,打开cmd,输入pip,检查电脑中有没有安装这个插件(一般python2.7以上自带pip工具) 2.更新pip工具的命令:python -m pip instal ...

  8. 将Centos7的yum配置为阿里云的镜像(完美解决yum下载太慢的问题)

    2017-02-17 16:02:30 张老湿 阅读数 13768     http://mirrors.aliyun.com/help/centos?spm=5176.bbsr150321.0.0. ...

  9. MQTT协议及EMQ应用

    MQTT是基于TCP/IP协议栈构建的异步通信消息协议,是一种轻量级的发布/订阅信息传输协议.MQTT在时间和空间上,将消息发送者与接受者分离,可以在不可靠的网络环境中进行扩展.适用于设备硬件存储空间 ...

  10. Linux路由:CentOS6的多种玩法

    将一台Linux主机作路由器使用,这本是件很容易的事情,利用Linux主机强大的网络功能,很轻松就实现了.这里在虚拟机环境下设定一台CentOS主机通过另一台CentOS主机路由接入Internet网 ...