Android连接springboot
asKotlin实现通过网络端口连接后台springboot管理数据库:
entity:
点击查看代码
package com.app.login.entity
data class User (
val name: String? = null,
val password: String? = null
)
点击查看代码
package com.app.login.network
import com.google.gson.GsonBuilder
import retrofit2.Retrofit
import retrofit2.converter.gson.GsonConverterFactory
object ServiceCreater {
val gson = GsonBuilder().setLenient().create()
private const val BASE_URL="http://10.99.117.223:9090/"
private val retrofit=Retrofit.Builder()
.baseUrl(BASE_URL)
.addConverterFactory(GsonConverterFactory.create(gson))
.build()
fun <T> create(serviceClass: Class<T>): T= retrofit.create(serviceClass)
inline fun<reified T> create(): T= create(T::class.java)
}
Service:
点击查看代码
package com.app.login.Service
import com.app.login.entity.User
import retrofit2.Call
import retrofit2.http.Body
import retrofit2.http.POST
interface UserService {
@POST("user/add")
fun add(@Body user: User):Call<String>
}
点击查看代码
package com.app.login
import android.os.Bundle
import android.util.Log
import android.widget.Button
import android.widget.EditText
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat
import com.app.login.Service.UserService
import com.app.login.entity.User
import com.app.login.network.ServiceCreater
import retrofit2.Call
import retrofit2.Callback
import retrofit2.Response
class MainActivity : AppCompatActivity() {
lateinit var submit: Button
lateinit var username: EditText
lateinit var password: EditText
@SuppressWarnings("MissingInflatedId")
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
enableEdgeToEdge()
setContentView(R.layout.activity_main)
submit=findViewById(R.id.submit)
username=findViewById(R.id.username)
password=findViewById(R.id.password)
val userService = ServiceCreater.create<UserService>()
submit.setOnClickListener {
val user = User(username.text.toString(), password.text.toString())
Log.e("TAG", "onCreate: ${user.toString()}", )
println(user) // 输出: User2(name=Bob, password=654321)
userService.add(user).enqueue(object : Callback<String> {
override fun onResponse(call: Call<String>, response: Response<String>) {
val re=response.body()
Log.e("TAG", "onResponse: ${re}",)
Log.e("TAG", "onResponse: ${response}", )
}
override fun onFailure(call: Call<String>, t: Throwable) {
TODO("Not yet implemented")
}
})
}
}
}

浙公网安备 33010602011771号