软件工程日报22
个人作业实现——01
今天对个人作业进行分析,创建了数据库表并实现了登录与注册功能
package com.example.mywork;
import android.content.Intent;
import android.os.Bundle;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import androidx.appcompat.app.AppCompatActivity;
import com.example.mywork.pojo.User;
import com.example.mywork.service.UserService;
import retrofit2.Call;
import retrofit2.Callback;
import retrofit2.Response;
public class LoginActivity extends AppCompatActivity {
private EditText etUserId, etPassword;
private Button btnLogin, btnGoToRegister;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
etUserId = findViewById(R.id.etUserId);
etPassword = findViewById(R.id.etPassword);
btnLogin = findViewById(R.id.btnLogin);
btnGoToRegister = findViewById(R.id.btnGoToRegister);
btnLogin.setOnClickListener(v -> loginUser());
btnGoToRegister.setOnClickListener(v -> {
Intent intent = new Intent(LoginActivity.this, RegisterActivity.class);
startActivity(intent);
});
}
private void loginUser() {
String userId = etUserId.getText().toString();
String password = etPassword.getText().toString();
UserService apiService = RetrofitClient.getApiService();
Call<User> call = apiService.loginUser(userId, password);
call.enqueue(new Callback<User>() {
@Override
public void onResponse(Call<User> call, Response<User> response) {
if (response.isSuccessful()) {
User user = response.body();
if (user != null) {
String role = user.getUserRole();
Toast.makeText(LoginActivity.this, "登录成功,角色: " + role, Toast.LENGTH_SHORT).show();
// 根据角色跳转到不同页面
Intent intent;
switch (role) {
case "学生":
intent = new Intent(LoginActivity.this, StudentActivity.class);
break;
case "老师":
intent = new Intent(LoginActivity.this, TeacherActivity.class);
break;
default:
intent = new Intent(LoginActivity.this, LoginActivity.class);
break;
}
startActivity(intent);
} else {
Toast.makeText(LoginActivity.this, "用户信息为空", Toast.LENGTH_SHORT).show();
}
} else {
Toast.makeText(LoginActivity.this, "登录失败", Toast.LENGTH_SHORT).show();
}
}
@Override
public void onFailure(Call<User> call, Throwable t) {
Toast.makeText(LoginActivity.this, "网络错误: " + t.getMessage(), Toast.LENGTH_SHORT).show();
}
});
}
}



浙公网安备 33010602011771号